From patchwork Mon May 9 23:35:18 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pierre Langlois X-Patchwork-Id: 39190 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id A8CF727BBEA; Tue, 10 May 2022 00:36:33 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,FREEMAIL_FROM,MAILING_LIST_MULTI,SPF_HELO_PASS, URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 7032527BBE9 for ; Tue, 10 May 2022 00:36:32 +0100 (BST) Received: from localhost ([::1]:45854 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1noCvX-0000Qv-JQ for patchwork@mira.cbaines.net; Mon, 09 May 2022 19:36:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:47138) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1noCv6-0000GP-Sz for guix-patches@gnu.org; Mon, 09 May 2022 19:36:06 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:37624) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1noCv6-0001Sq-Kw for guix-patches@gnu.org; Mon, 09 May 2022 19:36:04 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1noCv5-0003yu-Io for guix-patches@gnu.org; Mon, 09 May 2022 19:36:03 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#52790] [PATCH v3 6/7] gnu: docker: Update to 20.10.15. Resent-From: Pierre Langlois Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 09 May 2022 23:36:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 52790 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 52790@debbugs.gnu.org Cc: Pierre Langlois Received: via spool by 52790-submit@debbugs.gnu.org id=B52790.165213934215225 (code B ref 52790); Mon, 09 May 2022 23:36:03 +0000 Received: (at 52790) by debbugs.gnu.org; 9 May 2022 23:35:42 +0000 Received: from localhost ([127.0.0.1]:59747 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1noCuj-0003xO-Gi for submit@debbugs.gnu.org; Mon, 09 May 2022 19:35:42 -0400 Received: from mout.gmx.net ([212.227.17.22]:40255) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1noCub-0003vv-HL for 52790@debbugs.gnu.org; Mon, 09 May 2022 19:35:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1652139327; bh=tJ+ZsZyfLUBfbEnLDMBwVBP69pnw02b1NUoS/iMP01A=; h=X-UI-Sender-Class:From:To:Cc:Subject:Date:In-Reply-To:References; b=azayeJxWwC7YmbDHfHXGaPWOUk63XSwohP2A4Q49NH7GWfuLtRE+KPtV/47yoWL4e LpxFtqcSyo5NT9MgOIzKNcfG0twvskmMuhtL0iNd0RgU3Y57Zxn2kRH8uf9M/aKWbH Nwoxe8xTGF19nE0bWvkBVp8bzA7HBnnFiKrz6dEs= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from localhost.localdomain ([82.69.64.142]) by mail.gmx.net (mrgmx104 [212.227.17.174]) with ESMTPSA (Nemesis) id 1Mof9F-1o7aHG2jTF-00p5TG; Tue, 10 May 2022 01:35:27 +0200 From: Pierre Langlois Date: Tue, 10 May 2022 00:35:18 +0100 Message-Id: <20220509233519.26703-6-pierre.langlois@gmx.com> X-Mailer: git-send-email 2.36.0 In-Reply-To: <20220509233519.26703-1-pierre.langlois@gmx.com> References: <87wneu1dyz.fsf@gmx.com> <20220509233519.26703-1-pierre.langlois@gmx.com> MIME-Version: 1.0 X-Provags-ID: V03:K1:l06rLhJ4rkxCZGDs3bPq5iOoLna87TkRff+g580cu5lGSnjLP/g qYD4/4SPI/vTE6xX5vrHlucdN1WO9CzhMLDlCdIO+XquXZC/9aQdbXPysMGJ4qgd/7qYjS5 6sYmxFFoIAiizgmPjyOQqqjvVcQ/+qOZX2GSjwkmGPooji0wfh+mwEtnItcjBkv7BWax1s1 ++VwxYrB7LoZybTlZ3v9w== X-UI-Out-Filterresults: notjunk:1;V03:K0:+1dccVZKWvk=:MHaJIzifH6oaGmSzvUHTYI IgwvPR8i5KtcnU33wuyOomr6mvknExz/fn0Z2b9GZSXeEkXR1V2aygiMWroOk2npe7+K63qLW kIfJU6KjscQi3BjC9SFixS9wW5Ias7IfhV8k8jNK5l0SuJ7YLPADmXLp4dW9YnR6XICp449EV EwQmFiLlhVuqy9o62UzDgO5omNfIqBXiHRiohlW2Hw4ZkUDZvI5cDUpAYaImfob8BXBtw3+EN EsQGjn8iszMT8BgT/a3OJh5WWNgHwssK9CPATW4zsWenlXUrKqTW6xUVIgWvnzclhMAOMqd4g m3lYEXB8KymxqRgI208ATzQPAztTik5fDX49YFnID1S5fyus2nDIfW6jQehLYRWlTi7v7wx2f rqdT1n/CAEn3/JyxE3qtx8fcnaugPS9avfsmhUQ4uN51BGTwM7w+1QJghATuSUixUQ4F877A0 lubzW060HIIylBZPrK6/209Qk5OBTCj6hzqnPwth2Ne95rk4x05mCPwXLU14apMDyNWiTNuTp 84MxVUeiIhXjgifzsvh1q0eLWaf1fmiZPA4Iq9224HzV04bAPw+X/2XWY3aWTntmLGolb8GP1 X2WfQ5UXRBEwMQVkbz1Bijd8eZK0elsCmaTIP8s3mIBByBXB7a8I+DWDnL71FZohKBquNuHXC tvp3ACUmx4akkrm2ifkwBAEwZ2jdGuf4mEakpYQsKctIh+4FGCvrivO79DP+/gRJVLm16QUrp SeHt9QA8zBjFFqczjFYEGVahMT0/msx+NZNKG3g4+S6tzFprXJAWJXDolxSi+wjXIvA1qawjp wyaMjfPf6r9tB9mVLhqobYP7v4l6kOSjM4exwzKV+lM1AtzcOC8/pOmah71FJxzpYIFYhoSOd ryrzk/UDgpFUTGSmi0c+EEgM1mQ+qgjIBgFzhdPa/Z0033h8LGKhLroiTUU5Frth+D1l2ZYVM qKBmzLJkBNkNkwMXzrYyNHpeBmLr0Syjuqxn4sh++EMZfDpHBB7MtvQuAIWOVcGlhooesMSFR cK9nz8PDMFB8k2MWa+exFLZrWktbs1OwV8EN/meBjV4puzRjwGVoQyJa3edmEBVIw8bf/1PUW RvKCzPovph9bvM= X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * 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 -- 2.36.0 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. (("\\ isn't found. + ;; FIXME: We might need to package buildkit and docker's + ;; buildx plugin, to support qemu-based docker containers. + (("\\ .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 -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) - }