On Mon, Aug 14, 2023 at 5:17 PM Martin Jansa via lists.yoctoproject.org <[email protected]> wrote:
> RFC, because I've only build tested this in kirkstone, waiting for whole > image to build to test it in runtime > Passed minimal sanity check on rpi4-64: > > On Mon, Aug 14, 2023 at 5:14 PM Martin Jansa <[email protected]> > wrote: > >> * since this backport: >> https://lists.openembedded.org/g/openembedded-core/message/185082 >> landed in kirkstone: >> >> https://git.openembedded.org/openembedded-core/commit/?h=kirkstone&id=5dc74138649ab7a2c0158a43225dc7a8fd732355 >> >> docker cannot access network and fails with: >> "http: invalid Host header" >> >> update to latest commit in 20.10 branch, because latest tag v20.10.25 >> have the fix yet: >> https://github.com/moby/moby/compare/v20.10.21...v20.10.25 >> >> so we need couple more commits from upstream: >> >> https://github.com/moby/moby/compare/v20.10.25...791d8ab87747169b4cbfcdf2fd57c81952bae6d5 >> >> Adjust the go version revert which was here since the upgrade to >> v20.10.21: >> >> https://git.yoctoproject.org/meta-virtualization/commit/?h=kirkstone&id=927537108bcf2b98859512ce3eae59a73439994d >> >> and add another revert for the go upgrades from upstream for this older >> patch to apply. >> >> * update cli to latest in 20.10 branch as well: >> >> https://github.com/docker/cli/compare/baeda1f82a10204ec5708d5fbba130ad76cfee49..911449ca245308472a3d34a7f1a98b918e65c8c3 >> >> Signed-off-by: Martin Jansa <[email protected]> >> --- >> recipes-containers/docker/docker-ce_git.bb | 27 ++-- >> recipes-containers/docker/docker-moby_git.bb | 29 ++-- >> ...rt-go-updates-from-1.19.12-to-1.18.7.patch | 144 ++++++++++++++++++ >> ...t-go-updates-from-1.18.7-to-1.17.13.patch} | 35 ++--- >> ...avoid-using-strings.Cut-from-go-1.18.patch | 32 ++++ >> 5 files changed, 218 insertions(+), 49 deletions(-) >> create mode 100644 >> recipes-containers/docker/files/0001-Revert-go-updates-from-1.19.12-to-1.18.7.patch >> rename recipes-containers/docker/files/{0001-revert-go-1.8-update.patch >> => 0002-Revert-go-updates-from-1.18.7-to-1.17.13.patch} (97%) >> create mode 100644 >> recipes-containers/docker/files/0003-builder.go-avoid-using-strings.Cut-from-go-1.18.patch >> >> diff --git a/recipes-containers/docker/docker-ce_git.bb >> b/recipes-containers/docker/docker-ce_git.bb >> index a41e83a..76ac41e 100644 >> --- a/recipes-containers/docker/docker-ce_git.bb >> +++ b/recipes-containers/docker/docker-ce_git.bb >> @@ -33,18 +33,20 @@ DESCRIPTION = "Linux container runtime \ >> >> SRCREV_docker = "3056208812eb5e792fa99736c9167d1e10f4ab49" >> SRCREV_libnetwork = "dcdf8f176d1e13ad719e913e796fb698d846de98" >> -SRCREV_cli = "baeda1f82a10204ec5708d5fbba130ad76cfee49" >> +SRCREV_cli = "911449ca245308472a3d34a7f1a98b918e65c8c3" >> SRCREV_FORMAT = "docker_libnetwork" >> SRC_URI = "\ >> - git:// >> github.com/docker/docker.git;branch=20.10;name=docker;protocol=https \ >> - git:// >> github.com/docker/libnetwork.git;branch=master;name=libnetwork;destsuffix=git/libnetwork;protocol=https >> \ >> - git:// >> github.com/docker/cli;branch=20.10;name=cli;destsuffix=git/cli;protocol=https >> \ >> - file://0001-libnetwork-use-GO-instead-of-go.patch \ >> - file://docker.init \ >> - file://0001-dynbinary-use-go-cross-compiler.patch \ >> - >> file://0001-cli-use-external-GO111MODULE-and-cross-compiler.patch \ >> - file://0001-revert-go-1.8-update.patch;patchdir=src/import \ >> - " >> + git:// >> github.com/docker/docker.git;branch=20.10;name=docker;protocol=https \ >> + git:// >> github.com/docker/libnetwork.git;branch=master;name=libnetwork;destsuffix=git/libnetwork;protocol=https >> \ >> + git:// >> github.com/docker/cli;branch=20.10;name=cli;destsuffix=git/cli;protocol=https >> \ >> + file://0001-libnetwork-use-GO-instead-of-go.patch \ >> + file://docker.init \ >> + file://0001-dynbinary-use-go-cross-compiler.patch \ >> + file://0001-cli-use-external-GO111MODULE-and-cross-compiler.patch \ >> + >> file://0001-Revert-go-updates-from-1.19.12-to-1.18.7.patch;patchdir=src/import >> \ >> + >> file://0002-Revert-go-updates-from-1.18.7-to-1.17.13.patch;patchdir=src/import >> \ >> + >> file://0003-builder.go-avoid-using-strings.Cut-from-go-1.18.patch;patchdir=src/import >> \ >> +" >> >> DOCKER_COMMIT = "${SRCREV_docker}" >> >> @@ -54,7 +56,10 @@ require docker.inc >> LICENSE = "Apache-2.0" >> LIC_FILES_CHKSUM = >> "file://src/import/LICENSE;md5=4859e97a9c7780e77972d989f0823f28" >> >> -DOCKER_VERSION = "20.10.21-ce" >> +# 58 commits after v20.10.25 to include the fixes for go compatibility >> after >> +# https://lists.openembedded.org/g/openembedded-core/message/185082 >> +# >> https://github.com/moby/moby/compare/v20.10.25...791d8ab87747169b4cbfcdf2fd57c81952bae6d5 >> +DOCKER_VERSION = "20.10.25-ce" >> PV = "${DOCKER_VERSION}+git${SRCREV_docker}" >> >> CVE_PRODUCT = "docker mobyproject:moby" >> diff --git a/recipes-containers/docker/docker-moby_git.bb >> b/recipes-containers/docker/docker-moby_git.bb >> index b048208..5f8de07 100644 >> --- a/recipes-containers/docker/docker-moby_git.bb >> +++ b/recipes-containers/docker/docker-moby_git.bb >> @@ -34,20 +34,22 @@ DESCRIPTION = "Linux container runtime \ >> # - The common components of this recipe and docker-ce do need to be >> moved >> # to a docker.inc recipe >> >> -SRCREV_moby = "3056208812eb5e792fa99736c9167d1e10f4ab49" >> +SRCREV_moby = "791d8ab87747169b4cbfcdf2fd57c81952bae6d5" >> SRCREV_libnetwork = "dcdf8f176d1e13ad719e913e796fb698d846de98" >> -SRCREV_cli = "baeda1f82a10204ec5708d5fbba130ad76cfee49" >> +SRCREV_cli = "911449ca245308472a3d34a7f1a98b918e65c8c3" >> SRCREV_FORMAT = "moby_libnetwork" >> SRC_URI = "\ >> - git:// >> github.com/moby/moby.git;branch=20.10;name=moby;protocol=https \ >> - git:// >> github.com/docker/libnetwork.git;branch=master;name=libnetwork;destsuffix=git/libnetwork;protocol=https >> \ >> - git:// >> github.com/docker/cli;branch=20.10;name=cli;destsuffix=git/cli;protocol=https >> \ >> - file://docker.init \ >> - file://0001-libnetwork-use-GO-instead-of-go.patch \ >> - >> file://0001-cli-use-external-GO111MODULE-and-cross-compiler.patch \ >> - file://0001-dynbinary-use-go-cross-compiler.patch \ >> - file://0001-revert-go-1.8-update.patch;patchdir=src/import \ >> - " >> + git://github.com/moby/moby.git;branch=20.10;name=moby;protocol=https >> \ >> + git:// >> github.com/docker/libnetwork.git;branch=master;name=libnetwork;destsuffix=git/libnetwork;protocol=https >> \ >> + git:// >> github.com/docker/cli;branch=20.10;name=cli;destsuffix=git/cli;protocol=https >> \ >> + file://docker.init \ >> + file://0001-libnetwork-use-GO-instead-of-go.patch \ >> + file://0001-cli-use-external-GO111MODULE-and-cross-compiler.patch \ >> + file://0001-dynbinary-use-go-cross-compiler.patch \ >> + >> file://0001-Revert-go-updates-from-1.19.12-to-1.18.7.patch;patchdir=src/import >> \ >> + >> file://0002-Revert-go-updates-from-1.18.7-to-1.17.13.patch;patchdir=src/import >> \ >> + >> file://0003-builder.go-avoid-using-strings.Cut-from-go-1.18.patch;patchdir=src/import >> \ >> +" >> >> DOCKER_COMMIT = "${SRCREV_moby}" >> >> @@ -57,7 +59,10 @@ require docker.inc >> LICENSE = "Apache-2.0" >> LIC_FILES_CHKSUM = >> "file://src/import/LICENSE;md5=4859e97a9c7780e77972d989f0823f28" >> >> -DOCKER_VERSION = "20.10.21" >> +# 58 commits after v20.10.25 to include the fixes for go compatibility >> after >> +# https://lists.openembedded.org/g/openembedded-core/message/185082 >> +# >> https://github.com/moby/moby/compare/v20.10.25...791d8ab87747169b4cbfcdf2fd57c81952bae6d5 >> +DOCKER_VERSION = "20.10.25" >> PV = "${DOCKER_VERSION}+git${SRCREV_moby}" >> >> CVE_PRODUCT = "docker mobyproject:moby" >> diff --git >> a/recipes-containers/docker/files/0001-Revert-go-updates-from-1.19.12-to-1.18.7.patch >> b/recipes-containers/docker/files/0001-Revert-go-updates-from-1.19.12-to-1.18.7.patch >> new file mode 100644 >> index 0000000..2a3f3b9 >> --- /dev/null >> +++ >> b/recipes-containers/docker/files/0001-Revert-go-updates-from-1.19.12-to-1.18.7.patch >> @@ -0,0 +1,144 @@ >> +From 2cc349a336cd3cb4fa33554216a99dbce3879d29 Mon Sep 17 00:00:00 2001 >> +From: Martin Jansa <[email protected]> >> +Date: Mon, 14 Aug 2023 16:02:30 +0200 >> +Subject: [PATCH] Revert go updates from 1.19.12 to 1.18.7 >> + >> +To continue using 1.17 version as implemented for some reason in: >> + >> https://git.yoctoproject.org/meta-virtualization/commit/?h=kirkstone&id=927537108bcf2b98859512ce3eae59a73439994d >> +with 0001-revert-go-1.8-update.patch >> + >> +Revert "update to go1.19.12" >> +This reverts commit c42d7c7f6d0dccfe5d85f0126da2c8ec77573616. >> +Revert "[20.10] update go to go1.19.11" >> +This reverts commit 43fe787c232c54b53bda21301bbf3a463c4e4056. >> +Revert "[20.10] update go to go1.19.10" >> +This reverts commit 99f10dec91409c4f6ed2c4867638f4e5ea678f0a. >> +Revert "Dockerfile: temporarily skip CRIU stage" >> +This reverts commit af0477880cc8c0197517c0bc8de0cbd6cb9bd9a9. >> +Revert "[20.10] update go to go1.19.9" >> +This reverts commit 7f91a52b8969f5604fdca36ee30475cc9600be5b. >> +Revert "[20.10] update go to go1.19.8" >> +This reverts commit a09b3e9cf9de906438a6300760754fcb087f166a. >> +Revert "update to go1.19.7" >> +This reverts commit 9aa5d55a8ba8725133a6fbb5ac98d1fab341fdc7. >> +Revert "update to go1.19.6" >> +This reverts commit 98c9e3f43833bf87c21e02aca77c75c7a475ecd6. >> +Revert "update to go1.19.5" >> +This reverts commit 5b48f300dd0c6a2bbfc942408bc7e3fbc39609f0. >> +Revert "update to go1.19.4" >> +This reverts commit 82b0ac1166cc553e2757c5d490ce69078064ef6e. >> +Revert "Update to Go 1.19.3 to address CVE-2022-41716" >> +This reverts commit 4701ca9f719f5386d2ca2417b566b5950aa8a929. >> +Revert "Update to go 1.19.2 to address CVE-2022-2879, CVE-2022-2880, >> CVE-2022-41715" >> +This reverts commit 1c8c16524f94ae69eb33c5c9000e87615ce973a6. >> +Revert "Update to go 1.19.1 to address CVE-2022-27664, CVE-2022-32190" >> +This reverts commit 6cc1ef32a28e7e6e74383d4775bd178d36495181. >> +Revert "update to golang 1.19" >> +This reverts commit 5091f13a5d027b785084028aedb03beb5b0bd9a6. >> +Revert "Dockerfile: configure code dir as "safe" directory" >> +This reverts commit 0312e468da5c99267654d5c6b62785e29ffe6e0d. >> +Revert "[20.10] update to go1.18.10" >> +This reverts commit 625903f3fda862c69492256016b386628954b3a4. >> +Revert "[20.10] update gotestsum to v1.8.2" >> +This reverts commit edca413033cea5252f69bfc740e9450e5d0a0ef9. >> +Revert "[20.10] update to go1.18.9" >> +This reverts commit f8b0d77bfe109c5248ba6eb6c6db7f32e99a2e75. >> +Revert "[20.10] update to Go 1.18.8 to address CVE-2022-41716" >> +This reverts commit 0211f9e44dba888fa62dc2ba59ea573ad70e9708. >> + >> +Upstream-Status: Inapropriate >> +--- >> + Dockerfile | 12 ++---------- >> + Dockerfile.e2e | 2 +- >> + Dockerfile.simple | 2 +- >> + Dockerfile.windows | 4 ++-- >> + hack/dockerfile/install/gotestsum.installer | 2 +- >> + 5 files changed, 7 insertions(+), 15 deletions(-) >> + >> +diff --git a/Dockerfile b/Dockerfile >> +index 4ee4d8dd2c..9472c512a6 100644 >> +--- a/Dockerfile >> ++++ b/Dockerfile >> +@@ -3,7 +3,7 @@ >> + ARG CROSS="false" >> + ARG SYSTEMD="false" >> + # IMPORTANT: When updating this please note that stdlib archive/tar pkg >> is vendored >> +-ARG GO_VERSION=1.19.12 >> ++ARG GO_VERSION=1.18.7 >> + ARG DEBIAN_FRONTEND=noninteractive >> + ARG VPNKIT_VERSION=0.5.0 >> + ARG DOCKER_BUILDTAGS="apparmor seccomp" >> +@@ -267,9 +267,6 @@ RUN ln -sfv /go/src/github.com/docker/docker/.bashrc >> ~/.bashrc >> + RUN echo "source /usr/share/bash-completion/bash_completion" >> >> /etc/bash.bashrc >> + RUN ln -s /usr/local/completion/bash/docker >> /etc/bash_completion.d/docker >> + RUN ldconfig >> +-# Set dev environment as safe git directory to prevent "dubious >> ownership" errors >> +-# when bind-mounting the source into the dev-container. See >> https://github.com/moby/moby/pull/44930 >> +-RUN <https://github.com/moby/moby/pull/44930+-RUN> git config --global >> --add safe.directory $GOPATH/src/github.com/docker/docker >> + # This should only install packages that are specifically needed for >> the dev environment and nothing else >> + # Do you really need to add another package here? Can it be done in a >> different build stage? >> + RUN >> --mount=type=cache,sharing=locked,id=moby-dev-aptlib,target=/var/lib/apt \ >> +@@ -316,12 +313,7 @@ COPY --from=swagger /build/ /usr/local/bin/ >> + COPY --from=tomlv /build/ /usr/local/bin/ >> + COPY --from=tini /build/ /usr/local/bin/ >> + COPY --from=registry /build/ /usr/local/bin/ >> +- >> +-# Skip the CRIU stage for now, as the opensuse package repository is >> sometimes >> +-# unstable, and we're currently not using it in CI. >> +-# >> +-# FIXME(thaJeztah): re-enable this stage when >> https://github.com/moby/moby/issues/38963 is resolved (see >> https://github.com/moby/moby/pull/38984) >> +-# COPY --from=criu /build/ /usr/local/ >> ++COPY --from=criu /build/ /usr/local/ >> + COPY --from=vndr /build/ /usr/local/bin/ >> + COPY --from=gotestsum /build/ /usr/local/bin/ >> + COPY --from=golangci_lint /build/ /usr/local/bin/ >> +diff --git a/Dockerfile.e2e b/Dockerfile.e2e >> +index 31f836fc16..f92bec85b0 100644 >> +--- a/Dockerfile.e2e >> ++++ b/Dockerfile.e2e >> +@@ -1,4 +1,4 @@ >> +-ARG GO_VERSION=1.19.12 >> ++ARG GO_VERSION=1.18.7 >> + >> + FROM golang:${GO_VERSION}-alpine AS base >> + ENV GO111MODULE=off >> +diff --git a/Dockerfile.simple b/Dockerfile.simple >> +index af5fc13c25..8aa6d7ff94 100644 >> +--- a/Dockerfile.simple >> ++++ b/Dockerfile.simple >> +@@ -5,7 +5,7 @@ >> + >> + # This represents the bare minimum required to build and test Docker. >> + >> +-ARG GO_VERSION=1.19.12 >> ++ARG GO_VERSION=1.18.7 >> + >> + FROM golang:${GO_VERSION}-buster >> + ENV GO111MODULE=off >> +diff --git a/Dockerfile.windows b/Dockerfile.windows >> +index 7c2fe66389..6f8242decc 100644 >> +--- a/Dockerfile.windows >> ++++ b/Dockerfile.windows >> +@@ -165,8 +165,8 @@ FROM microsoft/windowsservercore >> + # Use PowerShell as the default shell >> + SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; >> $ProgressPreference = 'SilentlyContinue';"] >> + >> +-ARG GO_VERSION=1.19.12 >> +-ARG GOTESTSUM_VERSION=v1.8.2 >> ++ARG GO_VERSION=1.18.7 >> ++ARG GOTESTSUM_VERSION=v1.7.0 >> + >> + # Environment variable notes: >> + # - GO_VERSION must be consistent with 'Dockerfile' used by Linux. >> +diff --git a/hack/dockerfile/install/gotestsum.installer >> b/hack/dockerfile/install/gotestsum.installer >> +index 8e88fec77b..5024179958 100755 >> +--- a/hack/dockerfile/install/gotestsum.installer >> ++++ b/hack/dockerfile/install/gotestsum.installer >> +@@ -1,6 +1,6 @@ >> + #!/bin/sh >> + >> +-: ${GOTESTSUM_VERSION:=v1.8.2} >> ++: ${GOTESTSUM_VERSION:=v1.7.0} >> + >> + install_gotestsum() ( >> + set -e >> diff --git >> a/recipes-containers/docker/files/0001-revert-go-1.8-update.patch >> b/recipes-containers/docker/files/0002-Revert-go-updates-from-1.18.7-to-1.17.13.patch >> similarity index 97% >> rename from >> recipes-containers/docker/files/0001-revert-go-1.8-update.patch >> rename to >> recipes-containers/docker/files/0002-Revert-go-updates-from-1.18.7-to-1.17.13.patch >> index 0298c31..7cacccb 100644 >> --- a/recipes-containers/docker/files/0001-revert-go-1.8-update.patch >> +++ >> b/recipes-containers/docker/files/0002-Revert-go-updates-from-1.18.7-to-1.17.13.patch >> @@ -1,8 +1,7 @@ >> From 575302e9c6567b8547b308b2b0c6a07b27e3be3b Mon Sep 17 00:00:00 2001 >> From: Adrian Freihofer <[email protected]> >> Date: Sun, 4 Dec 2022 18:02:54 +0100 >> -Subject: [PATCH] Revert "Merge pull request #43976 from >> - thaJeztah/20.10_backport_bump_golang_1.18" >> +Subject: [PATCH] Revert go updates from 1.18.7 to 1.17.13 >> >> Upstream-Status: Inapropriate >> >> @@ -25,12 +24,11 @@ changes made to >> 32debe0986f4516bfe17bf9122447f0c735e61b4. >> vendor/archive/tar/reader_test.go | 30 +++--- >> vendor/archive/tar/stat_actime1.go | 1 + >> vendor/archive/tar/stat_actime2.go | 1 + >> - vendor/archive/tar/stat_unix.go | 1 + >> vendor/archive/tar/strconv.go | 43 +++++--- >> vendor/archive/tar/tar_test.go | 2 +- >> vendor/archive/tar/writer.go | 89 ++++++++--------- >> vendor/archive/tar/writer_test.go | 24 +++-- >> - 18 files changed, 251 insertions(+), 312 deletions(-) >> + 17 files changed, 250 insertions(+), 312 deletions(-) >> delete mode 100644 vendor/archive/tar/fuzz_test.go >> >> diff --git a/Dockerfile b/Dockerfile >> @@ -109,10 +107,10 @@ index c34a5add11..50ed9293c1 100644 >> >> var generatedTempl = >> template.Must(template.New("rpc_cient").Funcs(templFuncs).Parse(` >> diff --git a/vendor/archive/tar/common.go b/vendor/archive/tar/common.go >> -index c99b5c1920..c667cfc872 100644 >> +index f6d701d925..8706ede431 100644 >> --- a/vendor/archive/tar/common.go >> +++ b/vendor/archive/tar/common.go >> -@@ -316,10 +316,10 @@ func invertSparseEntries(src []sparseEntry, size >> int64) []sparseEntry { >> +@@ -319,10 +319,10 @@ func invertSparseEntries(src []sparseEntry, size >> int64) []sparseEntry { >> // fileState tracks the number of logical (includes sparse holes) and >> physical >> // (actual in tar archive) bytes remaining for the current file. >> // >> @@ -126,7 +124,7 @@ index c99b5c1920..c667cfc872 100644 >> } >> >> // allowedFormats determines which formats can be used. >> -@@ -413,22 +413,22 @@ func (h Header) allowedFormats() (format Format, >> paxHdrs map[string]string, err >> +@@ -416,22 +416,22 @@ func (h Header) allowedFormats() (format Format, >> paxHdrs map[string]string, err >> >> // Check basic fields. >> var blk block >> @@ -165,7 +163,7 @@ index c99b5c1920..c667cfc872 100644 >> >> // Check for header-only types. >> var whyOnlyPAX, whyOnlyGNU string >> -@@ -538,7 +538,7 @@ type headerFileInfo struct { >> +@@ -541,7 +541,7 @@ type headerFileInfo struct { >> func (fi headerFileInfo) Size() int64 { return fi.h.Size } >> func (fi headerFileInfo) IsDir() bool { return fi.Mode().IsDir() >> } >> func (fi headerFileInfo) ModTime() time.Time { return fi.h.ModTime } >> @@ -474,7 +472,7 @@ index e73e0d2609..0000000000 >> - }) >> -} >> diff --git a/vendor/archive/tar/reader.go b/vendor/archive/tar/reader.go >> -index e609c15f27..f645af8016 100644 >> +index 45848304ed..ca32bdea1f 100644 >> --- a/vendor/archive/tar/reader.go >> +++ b/vendor/archive/tar/reader.go >> @@ -65,7 +65,7 @@ func (tr *Reader) next() (*Header, error) { >> @@ -821,20 +819,8 @@ index f76d6be220..5a9a35cbb4 100644 >> >> package tar >> >> -diff --git a/vendor/archive/tar/stat_unix.go >> b/vendor/archive/tar/stat_unix.go >> -index b743c76b8c..4a5bca0312 100644 >> ---- a/vendor/archive/tar/stat_unix.go >> -+++ b/vendor/archive/tar/stat_unix.go >> -@@ -3,6 +3,7 @@ >> - // license that can be found in the LICENSE file. >> - >> - //go:build aix || linux || darwin || dragonfly || freebsd || openbsd || >> netbsd || solaris >> -+// +build aix linux darwin dragonfly freebsd openbsd netbsd solaris >> - >> - package tar >> - >> diff --git a/vendor/archive/tar/strconv.go >> b/vendor/archive/tar/strconv.go >> -index 275db6f026..f0b61e6dba 100644 >> +index ac3196370e..fde45c9dbf 100644 >> --- a/vendor/archive/tar/strconv.go >> +++ b/vendor/archive/tar/strconv.go >> @@ -14,7 +14,7 @@ import ( >> @@ -916,7 +902,7 @@ index 275db6f026..f0b61e6dba 100644 >> >> if !validPAXRecord(k, v) { >> return "", "", s, ErrHeader >> -@@ -314,7 +333,7 @@ func formatPAXRecord(k, v string) (string, error) { >> +@@ -315,7 +334,7 @@ func formatPAXRecord(k, v string) (string, error) { >> // for the PAX version of the USTAR string fields. >> // The key must not contain an '=' character. >> func validPAXRecord(k, v string) bool { >> @@ -1213,6 +1199,3 @@ index 640264984a..4e709e5cac 100644 >> } >> default: >> t.Fatalf("test %d.%d, unknown test >> operation: %T", i, j, tf) >> --- >> -2.38.1 >> - >> diff --git >> a/recipes-containers/docker/files/0003-builder.go-avoid-using-strings.Cut-from-go-1.18.patch >> b/recipes-containers/docker/files/0003-builder.go-avoid-using-strings.Cut-from-go-1.18.patch >> new file mode 100644 >> index 0000000..0574d9e >> --- /dev/null >> +++ >> b/recipes-containers/docker/files/0003-builder.go-avoid-using-strings.Cut-from-go-1.18.patch >> @@ -0,0 +1,32 @@ >> +From 6867fc1f6bd01596c2d3dc7bc07e26fa98965185 Mon Sep 17 00:00:00 2001 >> +From: Martin Jansa <[email protected]> >> +Date: Mon, 14 Aug 2023 16:41:42 +0200 >> +Subject: [PATCH] builder.go: avoid using strings.Cut from go-1.18 >> + >> +* we're still using go-1.17 >> + >> +Upstream-Status: Inapropriate >> +--- >> + builder/builder-next/builder.go | 7 +++++-- >> + 1 file changed, 5 insertions(+), 2 deletions(-) >> + >> +diff --git a/builder/builder-next/builder.go >> b/builder/builder-next/builder.go >> +index ee6b9f0fb1..a9bda8c370 100644 >> +--- a/builder/builder-next/builder.go >> ++++ b/builder/builder-next/builder.go >> +@@ -555,10 +555,13 @@ func toBuildkitExtraHosts(inp []string, >> hostGatewayIP net.IP) (string, error) { >> + } >> + hosts := make([]string, 0, len(inp)) >> + for _, h := range inp { >> +- host, ip, ok := strings.Cut(h, ":") >> +- if !ok || host == "" || ip == "" { >> ++ parts := strings.Split(h, ":") >> ++ >> ++ if len(parts) != 2 || parts[0] == "" || parts[1] == "" { >> + return "", errors.Errorf("invalid host %s", h) >> + } >> ++ host := parts[0] >> ++ ip := parts[1] >> + // If the IP Address is a "host-gateway", replace this >> value with the >> + // IP address stored in the daemon level HostGatewayIP >> config variable. >> + if ip == opts.HostGatewayName { >> -- >> 2.41.0 >> >> > > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#8190): https://lists.yoctoproject.org/g/meta-virtualization/message/8190 Mute This Topic: https://lists.yoctoproject.org/mt/100738603/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
