Skip to content

Commit

Permalink
Merge pull request #4825 from thaJeztah/23.0_update_golang_1.20.13
Browse files Browse the repository at this point in the history
[23.0] update to go1.20.13
  • Loading branch information
thaJeztah authored Jan 25, 2024
2 parents 4d6486d + 5aa844d commit 672b149
Show file tree
Hide file tree
Showing 12 changed files with 39 additions and 47 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ jobs:
name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.20.12
go-version: 1.20.13
-
name: Test
run: |
Expand Down
40 changes: 20 additions & 20 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
# syntax=docker/dockerfile:1

ARG BASE_VARIANT=alpine
ARG GO_VERSION=1.20.12
ARG ALPINE_VERSION=3.17
ARG GO_VERSION=1.20.13
ARG ALPINE_VERSION=3.18
ARG XX_VERSION=1.1.1
ARG GOVERSIONINFO_VERSION=v1.3.0
ARG GOTESTSUM_VERSION=v1.10.0
ARG BUILDX_VERSION=0.11.2
ARG COMPOSE_VERSION=v2.22.0

FROM --platform=$BUILDPLATFORM tonistiigi/xx:${XX_VERSION} AS xx

FROM --platform=$BUILDPLATFORM golang:${GO_VERSION}-alpine${ALPINE_VERSION} AS build-base-alpine
COPY --from=xx / /
COPY --link --from=xx / /
RUN apk add --no-cache bash clang lld llvm file git
WORKDIR /go/src/github.com/docker/cli

Expand All @@ -21,7 +22,7 @@ ARG TARGETPLATFORM
RUN xx-apk add --no-cache musl-dev gcc

FROM --platform=$BUILDPLATFORM golang:${GO_VERSION}-bullseye AS build-base-bullseye
COPY --from=xx / /
COPY --link --from=xx / /
RUN apt-get update && apt-get install --no-install-recommends -y bash clang lld llvm file
WORKDIR /go/src/github.com/docker/cli

Expand All @@ -40,13 +41,13 @@ FROM build-base-${BASE_VARIANT} AS goversioninfo
ARG GOVERSIONINFO_VERSION
RUN --mount=type=cache,target=/root/.cache/go-build \
--mount=type=cache,target=/go/pkg/mod \
GOBIN=/out GO111MODULE=on go install "github.com/josephspurrier/goversioninfo/cmd/goversioninfo@${GOVERSIONINFO_VERSION}"
GOBIN=/out GO111MODULE=on CGO_ENABLED=0 go install "github.com/josephspurrier/goversioninfo/cmd/goversioninfo@${GOVERSIONINFO_VERSION}"

FROM build-base-${BASE_VARIANT} AS gotestsum
ARG GOTESTSUM_VERSION
RUN --mount=type=cache,target=/root/.cache/go-build \
--mount=type=cache,target=/go/pkg/mod \
GOBIN=/out GO111MODULE=on go install "gotest.tools/gotestsum@${GOTESTSUM_VERSION}" \
GOBIN=/out GO111MODULE=on CGO_ENABLED=0 go install "gotest.tools/gotestsum@${GOTESTSUM_VERSION}" \
&& /out/gotestsum --version

FROM build-${BASE_VARIANT} AS build
Expand All @@ -62,7 +63,7 @@ ARG CGO_ENABLED
ARG VERSION
# PACKAGER_NAME sets the company that produced the windows binary
ARG PACKAGER_NAME
COPY --from=goversioninfo /out/goversioninfo /usr/bin/goversioninfo
COPY --link --from=goversioninfo /out/goversioninfo /usr/bin/goversioninfo
# in bullseye arm64 target does not link with lld so configure it to use ld instead
RUN [ ! -f /etc/alpine-release ] && xx-info is-cross && [ "$(xx-info arch)" = "arm64" ] && XX_CC_PREFER_LINKER=ld xx-clang --setup-target-triple || true
RUN --mount=type=bind,target=.,ro \
Expand All @@ -76,7 +77,7 @@ RUN --mount=type=bind,target=.,ro \
xx-verify $([ "$GO_LINKMODE" = "static" ] && echo "--static") /out/docker

FROM build-${BASE_VARIANT} AS test
COPY --from=gotestsum /out/gotestsum /usr/bin/gotestsum
COPY --link --from=gotestsum /out/gotestsum /usr/bin/gotestsum
ENV GO111MODULE=auto
RUN --mount=type=bind,target=.,rw \
--mount=type=cache,target=/root/.cache \
Expand All @@ -98,32 +99,31 @@ RUN --mount=ro --mount=type=cache,target=/root/.cache \
TARGET=/out ./scripts/build/plugins e2e/cli-plugins/plugins/*

FROM build-base-alpine AS e2e-base-alpine
RUN apk add --no-cache build-base curl docker-compose openssl openssh-client
RUN apk add --no-cache build-base curl openssl openssh-client

FROM build-base-bullseye AS e2e-base-bullseye
RUN apt-get update && apt-get install -y build-essential curl openssl openssh-client
ARG COMPOSE_VERSION=1.29.2
RUN curl -fsSL https://github.com/docker/compose/releases/download/${COMPOSE_VERSION}/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose && \
chmod +x /usr/local/bin/docker-compose

FROM docker/buildx-bin:${BUILDX_VERSION} AS buildx
FROM docker/buildx-bin:${BUILDX_VERSION} AS buildx
FROM docker/compose-bin:${COMPOSE_VERSION} AS compose

FROM e2e-base-${BASE_VARIANT} AS e2e
ARG NOTARY_VERSION=v0.6.1
ADD --chmod=0755 https://github.com/theupdateframework/notary/releases/download/${NOTARY_VERSION}/notary-Linux-amd64 /usr/local/bin/notary
COPY e2e/testdata/notary/root-ca.cert /usr/share/ca-certificates/notary.cert
COPY --link e2e/testdata/notary/root-ca.cert /usr/share/ca-certificates/notary.cert
RUN echo 'notary.cert' >> /etc/ca-certificates.conf && update-ca-certificates
COPY --from=gotestsum /out/gotestsum /usr/bin/gotestsum
COPY --from=build /out ./build/
COPY --from=build-plugins /out ./build/
COPY --from=buildx /buildx /usr/libexec/docker/cli-plugins/docker-buildx
COPY . .
COPY --link --from=gotestsum /out/gotestsum /usr/bin/gotestsum
COPY --link --from=build /out ./build/
COPY --link --from=build-plugins /out ./build/
COPY --link --from=buildx /buildx /usr/libexec/docker/cli-plugins/docker-buildx
COPY --link --from=compose /docker-compose /usr/libexec/docker/cli-plugins/docker-compose
COPY --link . .
ENV DOCKER_BUILDKIT=1
ENV PATH=/go/src/github.com/docker/cli/build:$PATH
CMD ./scripts/test/e2e/entry

FROM build-base-${BASE_VARIANT} AS dev
COPY . .
COPY --link . .

FROM scratch AS binary
COPY --from=build /out .
Expand Down
2 changes: 1 addition & 1 deletion docker-bake.hcl
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
variable "GO_VERSION" {
default = "1.20.12"
default = "1.20.13"
}
variable "VERSION" {
default = ""
Expand Down
2 changes: 1 addition & 1 deletion dockerfiles/Dockerfile.authors
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1

ARG ALPINE_VERSION=3.17
ARG ALPINE_VERSION=3.18

FROM alpine:${ALPINE_VERSION} AS gen
RUN apk add --no-cache bash git
Expand Down
14 changes: 7 additions & 7 deletions dockerfiles/Dockerfile.dev
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# syntax=docker/dockerfile:1

ARG GO_VERSION=1.20.12
ARG ALPINE_VERSION=3.17
ARG GO_VERSION=1.20.13
ARG ALPINE_VERSION=3.18

ARG BUILDX_VERSION=0.11.2
FROM docker/buildx-bin:${BUILDX_VERSION} AS buildx
Expand Down Expand Up @@ -48,11 +48,11 @@ CMD bash
ENV DISABLE_WARN_OUTSIDE_CONTAINER=1
ENV PATH=$PATH:/go/src/github.com/docker/cli/build

COPY --from=buildx /buildx /usr/libexec/docker/cli-plugins/docker-buildx
COPY --from=gofumpt /go/bin/* /go/bin/
COPY --from=gotestsum /go/bin/* /go/bin/
COPY --from=goversioninfo /go/bin/* /go/bin/
COPY --link --from=buildx /buildx /usr/libexec/docker/cli-plugins/docker-buildx
COPY --link --from=gofumpt /go/bin/* /go/bin/
COPY --link --from=gotestsum /go/bin/* /go/bin/
COPY --link --from=goversioninfo /go/bin/* /go/bin/

WORKDIR /go/src/github.com/docker/cli
ENV GO111MODULE=auto
COPY . .
COPY --link . .
6 changes: 3 additions & 3 deletions dockerfiles/Dockerfile.lint
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# syntax=docker/dockerfile:1

ARG GO_VERSION=1.20.12
ARG ALPINE_VERSION=3.17
ARG GO_VERSION=1.20.13
ARG ALPINE_VERSION=3.18
ARG GOLANGCI_LINT_VERSION=v1.52.2

FROM golangci/golangci-lint:${GOLANGCI_LINT_VERSION}-alpine AS golangci-lint
Expand All @@ -11,7 +11,7 @@ ENV GO111MODULE=off
ENV CGO_ENABLED=0
ENV GOGC=75
WORKDIR /go/src/github.com/docker/cli
COPY --from=golangci-lint /usr/bin/golangci-lint /usr/bin/golangci-lint
COPY --link --from=golangci-lint /usr/bin/golangci-lint /usr/bin/golangci-lint
RUN --mount=type=bind,target=. \
--mount=type=cache,target=/root/.cache \
golangci-lint run
4 changes: 2 additions & 2 deletions dockerfiles/Dockerfile.vendor
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# syntax=docker/dockerfile:1

ARG GO_VERSION=1.20.12
ARG ALPINE_VERSION=3.17
ARG GO_VERSION=1.20.13
ARG ALPINE_VERSION=3.18
ARG MODOUTDATED_VERSION=v0.8.0

FROM golang:${GO_VERSION}-alpine${ALPINE_VERSION} AS base
Expand Down
2 changes: 0 additions & 2 deletions e2e/compose-env.connhelper-ssh.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
version: '2.1'

services:
engine:
build:
Expand Down
3 changes: 0 additions & 3 deletions e2e/compose-env.experimental.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
version: '2.1'

services:
engine:
command: ["--insecure-registry=registry:5000", "--experimental"]

3 changes: 0 additions & 3 deletions e2e/compose-env.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
version: '2.1'

services:
registry:
image: 'registry:2'
Expand All @@ -25,4 +23,3 @@ services:
ports:
- 4444:4443
command: ['notary-server', '-config=/fixtures/notary-config.json']

2 changes: 1 addition & 1 deletion e2e/testdata/Dockerfile.gencerts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1

ARG GO_VERSION=1.20.12
ARG GO_VERSION=1.20.13

FROM golang:${GO_VERSION}-alpine AS generated
RUN go install github.com/dmcgowan/quicktls@master
Expand Down
6 changes: 3 additions & 3 deletions scripts/test/e2e/run
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,13 @@ setup() {
export TEST_CONNHELPER_SSH_ID_RSA_PUB
file="${file}:./e2e/compose-env.connhelper-ssh.yaml"
fi
COMPOSE_PROJECT_NAME=$project COMPOSE_FILE=$file docker-compose up --build -d >&2
COMPOSE_PROJECT_NAME=$project COMPOSE_FILE=$file docker compose up --build -d >&2

local network="${project}_default"
# TODO: only run if inside a container
docker network connect "$network" "$(hostname)"

engine_ip="$(container_ip "${project}_engine_1" "$network")"
engine_ip="$(container_ip "${project}-engine-1" "$network")"
engine_host="tcp://$engine_ip:2375"
if [ "${TEST_CONNHELPER:-}" = "ssh" ];then
engine_host="ssh://penguin@${engine_ip}"
Expand All @@ -54,7 +54,7 @@ cleanup() {
local project=$1
local network="${project}_default"
docker network disconnect "$network" "$(hostname)"
COMPOSE_PROJECT_NAME=$1 COMPOSE_FILE=$2 docker-compose down -v --rmi local >&2
COMPOSE_PROJECT_NAME=$1 COMPOSE_FILE=$2 docker compose down -v --rmi local >&2
}

runtests() {
Expand Down

0 comments on commit 672b149

Please sign in to comment.