From 2b7ef9f181bf4472da87ff2d552a286299978895 Mon Sep 17 00:00:00 2001 From: Felix Lange Date: Thu, 30 Jan 2025 11:53:32 +0100 Subject: [PATCH] build: provide a flag to disable publishing in dockerx build --- .travis.yml | 2 +- build/ci.go | 17 ++++++++++++----- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/.travis.yml b/.travis.yml index 2ba3af9419..8953450e84 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,7 +25,7 @@ jobs: before_install: - export DOCKER_CLI_EXPERIMENTAL=enabled script: - - go run build/ci.go dockerx -platform "linux/amd64,linux/arm64,linux/riscv64" -upload ethereum/client-go + - go run build/ci.go dockerx -platform "linux/amd64,linux/arm64,linux/riscv64" -hub ethereum/client-go -upload # This builder does the Linux Azure uploads - stage: build diff --git a/build/ci.go b/build/ci.go index 4a83fb9a88..a9c308fcaa 100644 --- a/build/ci.go +++ b/build/ci.go @@ -684,7 +684,8 @@ func maybeSkipArchive(env build.Environment) { func doDockerBuildx(cmdline []string) { var ( platform = flag.String("platform", "", `Push a multi-arch docker image for the specified architectures (usually "linux/amd64,linux/arm64")`) - upload = flag.String("upload", "", `Where to upload the docker image (usually "ethereum/client-go")`) + hubImage = flag.String("hub", "ethereum/client-go", `Where to upload the docker image`) + upload = flag.Bool("upload", false, `Whether to trigger upload`) ) flag.CommandLine.Parse(cmdline) @@ -725,19 +726,25 @@ func doDockerBuildx(cmdline []string) { file string base string }{ - {file: "Dockerfile", base: fmt.Sprintf("%s:", *upload)}, - {file: "Dockerfile.alltools", base: fmt.Sprintf("%s:alltools-", *upload)}, + {file: "Dockerfile", base: fmt.Sprintf("%s:", *hubImage)}, + {file: "Dockerfile.alltools", base: fmt.Sprintf("%s:alltools-", *hubImage)}, } { for _, tag := range tags { // latest, stable etc gethImage := fmt.Sprintf("%s%s", spec.base, tag) - build.MustRunCommand("docker", "buildx", "build", + cmd := exec.Command("docker", "buildx", "build", "--build-arg", "COMMIT="+env.Commit, "--build-arg", "VERSION="+version.WithMeta, "--build-arg", "BUILDNUM="+env.Buildnum, "--tag", gethImage, "--platform", *platform, "--push", - "--file", spec.file, ".") + "--file", spec.file, + ) + if *upload { + cmd.Args = append(cmd.Args, "--push") + } + cmd.Args = append(cmd.Args, ".") + build.MustRun(cmd) } } }