[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#52790] [PATCH v3 6/7] gnu: docker: Update to 20.10.15.
From: |
Pierre Langlois |
Subject: |
[bug#52790] [PATCH v3 6/7] gnu: docker: Update to 20.10.15. |
Date: |
Tue, 10 May 2022 00:35:18 +0100 |
* gnu/packages/docker.scm (%docker-version): Update to 20.10.15.
(docker-libnetwork): Update commit according to vendor.conf.
(docker)[origin]: Remove docker-fix-tests.patch.
[arguments]: Adapt 'patch-paths phase, substitute "ip6tables" and
buildkit-qemu. Remove trailing #t.
[native-inputs]: Replace go-1.14 by go.
(docker-cli)[arguments]: Set GO_LINKMODE to "dynamic". Remove trailing #t.
* gnu/packages/networking.scm (go-sctp): Update commit according to
docker-libnetwork's vendor.conf.
* gnu/packages/patches/docker-fix-tests.patch: Delete.
* gnu/local.mk (dist_patch_DATA): Remove patch.
---
gnu/local.mk | 1 -
gnu/packages/docker.scm | 72 +++++++++------------
gnu/packages/networking.scm | 6 +-
gnu/packages/patches/docker-fix-tests.patch | 28 --------
4 files changed, 32 insertions(+), 75 deletions(-)
delete mode 100644 gnu/packages/patches/docker-fix-tests.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 3b7db46b26..69d3f404b7 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1008,7 +1008,6 @@ dist_patch_DATA =
\
%D%/packages/patches/docbook-xsl-support-old-url.patch \
%D%/packages/patches/doc++-include-directives.patch \
%D%/packages/patches/doc++-segfault-fix.patch \
- %D%/packages/patches/docker-fix-tests.patch \
%D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
%D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \
%D%/packages/patches/dstat-skip-devices-without-io.patch \
diff --git a/gnu/packages/docker.scm b/gnu/packages/docker.scm
index ff9bbecab6..a3d3e5fb51 100644
--- a/gnu/packages/docker.scm
+++ b/gnu/packages/docker.scm
@@ -54,7 +54,7 @@ (define-module (gnu packages docker)
;; Note - when changing Docker versions it is important to update the versions
;; of several associated packages (docker-libnetwork and go-sctp).
-(define %docker-version "19.03.15")
+(define %docker-version "20.10.15")
(define-public python-docker
(package
@@ -252,13 +252,12 @@ (define-public containerd
;;; anyway, as it needs many dependencies that aren't being satisfied.
(define docker-libnetwork
;; There are no recent release for libnetwork, so choose the last commit of
- ;; the branch that Docker uses, as can be seen in the Docker source file
- ;; 'hack/dockerfile/install/proxy.installer'. NOTE - It is important that
- ;; this version is kept in sync with the version of Docker being used.
- ;; This commit is the "bump_19.03" branch, as mentioned in Docker's
vendor.conf.
- (let ((commit "55e924b8a84231a065879156c0de95aefc5f5435")
+ ;; the branch that Docker uses, as can be seen in the 'vendor.conf' Docker
+ ;; source file. NOTE - It is important that this version is kept in sync
+ ;; with the version of Docker being used.
+ (let ((commit "339b972b464ee3d401b5788b2af9e31d09d6b7da")
(version (version-major+minor %docker-version))
- (revision "1"))
+ (revision "2"))
(package
(name "docker-libnetwork")
(version (git-version version revision commit))
@@ -271,7 +270,7 @@ (define docker-libnetwork
(file-name (git-file-name name version))
(sha256
(base32
- "19syb3scwiykn44gqfaqrgqv8a0df4ps0ykf3za9xkjc5cyi99mp"))
+ "0wx2hdwx56cbxiaky9kw2bi1prdfgzwr776lq1k0slw8kvn0cn32"))
;; Delete bundled ("vendored") free software source code.
(modules '((guix build utils)))
(snippet '(begin
@@ -324,9 +323,7 @@ (define-public docker
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0419iha9zmwlhzhnbfxlsa13vgd04yifnsr8qqnj2ks5dxrcajl8"))
- (patches
- (search-patches "docker-fix-tests.patch"))))
+ (base32 "1z816496aqla4nq0aksf0kpy8qk8x1a6y5hrazzkqliycbjnqizq"))))
(build-system gnu-build-system)
(arguments
`(#:modules
@@ -369,9 +366,10 @@ (define-public docker
(("DefaultRuntimeBinary = .*")
(string-append "DefaultRuntimeBinary = \""
(assoc-ref inputs "runc")
- "/sbin/runc\"\n"))
- (("DefaultRuntimeName = .*")
- (string-append "DefaultRuntimeName = \""
+ "/sbin/runc\"\n")))
+ (substitute* "daemon/runtime_unix.go"
+ (("defaultRuntimeName = .*")
+ (string-append "defaultRuntimeName = \""
(assoc-ref inputs "runc")
"/sbin/runc\"\n")))
(substitute* "daemon/config/config.go"
@@ -400,16 +398,6 @@ (define-public docker
(substitute* "pkg/archive/archive.go"
(("string\\{\"xz")
(string-append "string{\"" (assoc-ref inputs "xz") "/bin/xz")))
- ;; TODO: Remove when Docker proper uses v1.14.x to build
- (substitute* "registry/resumable/resumablerequestreader_test.go"
- (("I%27m%20not%20an%20url" all)
- (string-append "\"" all "\"")))
- ;; TODO: Remove when Docker proper uses v1.14.x to build
- (substitute* "vendor/gotest.tools/x/subtest/context.go"
- (("func \\(tc \\*testcase\\) Cleanup\\(" all)
- (string-append all "func()"))
- (("tc\\.Cleanup\\(" all)
- (string-append all "nil")))
(let ((source-files (filter (lambda (name)
(not (string-contains name "test")))
@@ -446,6 +434,7 @@ (define-public docker
("blkid" "util-linux" "sbin/blkid")
("unpigz" "pigz" "bin/unpigz")
("iptables" "iptables" "sbin/iptables")
+ ("ip6tables" "iptables" "sbin/ip6tables")
("iptables-legacy" "iptables" "sbin/iptables")
("ip" "iproute2" "sbin/ip"))
@@ -494,10 +483,13 @@ (define-public docker
"exec.Command")
;; Search for ZFS in PATH.
(("\\<LookPath\\(\"zfs\"\\)") "LooxPath(\"zfs\")")
+ ;; Do not fail when buildkit-qemu-<target> isn't found.
+ ;; FIXME: We might need to package buildkit and docker's
+ ;; buildx plugin, to support qemu-based docker containers.
+ (("\\<LookPath\\(\"buildkit-qemu-\"")
"LooxPath(\"buildkit-qemu-\"")
;; Fail on other unsubstituted LookPaths.
(("\\<LookPath\\(\"") "Guix_doesnt_want_LookPath\\(\"")
- (("\\<LooxPath") "LookPath")))
- #t))
+ (("\\<LooxPath") "LookPath")))))
(add-after 'patch-paths 'delete-failing-tests
(lambda _
;; Needs internet access.
@@ -522,8 +514,7 @@ (define-public docker
;; This file uses /var.
(delete-file "daemon/oci_linux_test.go")
;; Signal tests fail in bizarre ways
- (delete-file "pkg/signal/signal_linux_test.go")
- #t))
+ (delete-file "pkg/signal/signal_linux_test.go")))
(replace 'configure
(lambda _
(setenv "DOCKER_BUILDTAGS" "seccomp")
@@ -536,8 +527,7 @@ (define-public docker
;; information, and the DWARF symbol table.
(setenv "LDFLAGS" "-s -w")
;; Make build faster
- (setenv "GOCACHE" "/tmp")
- #t))
+ (setenv "GOCACHE" "/tmp")))
(add-before 'build 'setup-go-environment
(assoc-ref go:%standard-phases 'setup-go-environment))
(replace 'build
@@ -559,8 +549,7 @@ (define-public docker
"/.gopath/src/github.com/docker/docker"))
(with-directory-excursion ".gopath/src/github.com/docker/docker"
(invoke "hack/test/unit"))
- (setenv "PWD" #f)
- #t))
+ (setenv "PWD" #f)))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -568,8 +557,7 @@ (define-public docker
(install-file "bundles/dynbinary-daemon/dockerd" out-bin)
(install-file (string-append "bundles/dynbinary-daemon/dockerd-"
(getenv "VERSION"))
- out-bin)
- #t)))
+ out-bin))))
(add-after 'install 'remove-go-references
(assoc-ref go:%standard-phases 'remove-go-references)))))
(inputs
@@ -594,7 +582,7 @@ (define-public docker
("xz" ,xz)))
(native-inputs
(list eudev ; TODO: Should be propagated by lvm2 (.pc -> .pc)
- go-1.14 gotestsum pkg-config))
+ go gotestsum pkg-config))
(synopsis "Docker container component library, and daemon")
(description "This package provides a framework to assemble specialized
container systems. It includes components for orchestration, image
@@ -615,7 +603,7 @@ (define-public docker-cli
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1asapjj8brvbkd5irgdq82fx1ihrc14qaq30jxvjwflfm5yb7lv0"))))
+ (base32 "1jnql7szdk2wd3f5g1bxcairsmzirzybn3hy7xzqx1i679f2fg5v"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/docker/cli"
@@ -635,11 +623,11 @@ (define-public docker-cli
;; Make build reproducible.
(setenv "BUILDTIME" "1970-01-01 00:00:01.000000000+00:00")
(symlink "src/github.com/docker/cli/scripts" "./scripts")
- (symlink "src/github.com/docker/cli/docker.Makefile"
"./docker.Makefile")
- #t))
+ (symlink "src/github.com/docker/cli/docker.Makefile"
"./docker.Makefile")))
(replace 'build
(lambda _
- (invoke "./scripts/build/dynbinary")))
+ (setenv "GO_LINKMODE" "dynamic")
+ (invoke "./scripts/build/binary")))
(replace 'check
(lambda* (#:key make-flags tests? #:allow-other-keys)
(setenv "PATH" (string-append (getcwd) "/build:" (getenv "PATH")))
@@ -648,8 +636,7 @@ (define-public docker-cli
(with-directory-excursion "src/github.com/docker/cli"
;; TODO: Run test-e2e as well?
(apply invoke "make" "-f" "docker.Makefile" "test-unit"
- (or make-flags '())))
- #t)))
+ (or make-flags '()))))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@@ -662,8 +649,7 @@ (define-public docker-cli
(string-append etc "/fish/completions"))
(install-file "zsh/_docker"
(string-append etc "/zsh/site-functions")))
- (install-file "build/docker" out-bin)
- #t))))))
+ (install-file "build/docker" out-bin)))))))
(native-inputs
(list go libltdl pkg-config))
(synopsis "Command line interface to Docker")
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 9010e1f120..28ef92679d 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -1691,8 +1691,8 @@ (define-public go-netns
(define-public go-sctp
;; docker-libnetwork-cmd-proxy requires this exact commit.
;; This commit is mentioned in docker-libnetwork-cmd-proxy's vendor.conf.
- (let ((commit "6e2cb1366111dcf547c13531e3a263a067715847")
- (revision "2"))
+ (let ((commit "f2269e66cdee387bd321445d5d300893449805be")
+ (revision "3"))
(package
(name "go-sctp")
(version (git-version "0.0.0" revision commit))
@@ -1704,7 +1704,7 @@ (define-public go-sctp
(file-name (git-file-name name version))
(sha256
(base32
- "1ba90fmpdwxa1ba4hrsjhi3gfy3pwmz7x8amw1p5dc9p5a7nnqrb"))))
+ "04463rnn9y9psp11ac5di6wrwxlhymw5h9hfhhhnxqwla90ikp0g"))))
(build-system go-build-system)
(arguments
`(#:tests? #f ; Test suite is flakey.
diff --git a/gnu/packages/patches/docker-fix-tests.patch
b/gnu/packages/patches/docker-fix-tests.patch
deleted file mode 100644
index 3e3e318e25..0000000000
--- a/gnu/packages/patches/docker-fix-tests.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Author: Danny Milosavljevic <dannym@scratchpost.org>
-The socket name ended up too long inside the container.
-Use a shorter one.
---- a/pkg/authorization/authz_unix_test.go 2019-01-10 01:55:02.997985947
+0100
-+++ b/pkg/authorization/authz_unix_test.go 2019-01-10 02:03:21.177439757
+0100
-@@ -24,7 +24,7 @@
- )
-
- const (
-- pluginAddress = "authz-test-plugin.sock"
-+ pluginAddress = "/tmp/authz-test-plugin.sock"
- )
-
- func TestAuthZRequestPluginError(t *testing.T) {
-@@ -263,12 +263,7 @@
-
- // createTestPlugin creates a new sample authorization plugin
- func createTestPlugin(t *testing.T) *authorizationPlugin {
-- pwd, err := os.Getwd()
-- if err != nil {
-- t.Fatal(err)
-- }
--
-- client, err := plugins.NewClient("unix:///"+path.Join(pwd,
pluginAddress), &tlsconfig.Options{InsecureSkipVerify: true})
-+ client, err := plugins.NewClient("unix:///"+path.Join("/",
pluginAddress), &tlsconfig.Options{InsecureSkipVerify: true})
- if err != nil {
- t.Fatalf("Failed to create client %v", err)
- }
--
2.36.0
- [bug#52790] [PATCH v3 0/7] Update docker to 20.10.15., Pierre Langlois, 2022/05/09
- [bug#52790] [PATCH v3 1/7] gnu: runc: Update to 1.1.1., Pierre Langlois, 2022/05/09
- [bug#52790] [PATCH v3 2/7] gnu: containerd: Fix patch-paths build phase., Pierre Langlois, 2022/05/09
- [bug#52790] [PATCH v3 4/7] gnu: containerd: Switch to gexp arguments., Pierre Langlois, 2022/05/09
- [bug#52790] [PATCH v3 3/7] gnu: containerd: Update to 1.6.4., Pierre Langlois, 2022/05/09
- [bug#52790] [PATCH v3 5/7] gnu: docker: Fix mkfs.xfs reference., Pierre Langlois, 2022/05/09
- [bug#52790] [PATCH v3 7/7] gnu: docker: Switch to gexp and new input style., Pierre Langlois, 2022/05/09
- [bug#52790] [PATCH v3 6/7] gnu: docker: Update to 20.10.15.,
Pierre Langlois <=