diff options
author | Arnstein Ressem <aressem@verizonmedia.com> | 2022-08-17 09:43:36 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-08-17 09:43:36 +0200 |
commit | 5f57dc00592552a29cdab9c535ff05b03db08a5b (patch) | |
tree | c0b7e8cdec4c23b6f53c6d00dee139a1a18031c5 | |
parent | 08f88494cdf0ebc1909492a361a48c4f525af82b (diff) | |
parent | 2e4967745646eae351bd2bad9efe1e58dafc9be0 (diff) |
Merge pull request #23681 from vespa-engine/aressem/push-multi-arch-with-buildx
Release multi-arch images.
-rwxr-xr-x | screwdriver/release-container-image.sh | 26 |
1 files changed, 17 insertions, 9 deletions
diff --git a/screwdriver/release-container-image.sh b/screwdriver/release-container-image.sh index 3ae2a7feb1e..def2f037b63 100755 --- a/screwdriver/release-container-image.sh +++ b/screwdriver/release-container-image.sh @@ -26,27 +26,35 @@ cd $BUILD_DIR git clone --depth 1 https://github.com/vespa-engine/docker-image cd docker-image -docker build --build-arg VESPA_VERSION=$VESPA_VERSION --file Dockerfile \ - --tag docker.io/vespaengine/vespa:$VESPA_VERSION --tag docker.io/vespaengine/vespa:latest \ - --tag ghcr.io/vespa-engine/vespa:$VESPA_VERSION --tag ghcr.io/vespa-engine/vespa:latest . +docker info +docker version +docker buildx version +docker buildx install + +unset DOCKER_HOST +docker context create vespa-context --docker "host=tcp://localhost:2376,ca=/certs/client/ca.pem,cert=/certs/client/cert.pem,key=/certs/client/key.pem" +docker context use vespa-context + +docker buildx create --name vespa-builder --driver docker-container --use +docker buildx inspect --bootstrap # Push to Docker Hub -docker login --username aressem --password "$DOCKER_HUB_DEPLOY_KEY" if curl -fsSL https://index.docker.io/v1/repositories/vespaengine/vespa/tags/$VESPA_VERSION &> /dev/null; then echo "Container image docker.io/vespaengine/vespa:$VESPA_VERSION aldready exists." else - docker push docker.io/vespaengine/vespa:$VESPA_VERSION - docker push docker.io/vespaengine/vespa:latest + docker login --username aressem --password "$DOCKER_HUB_DEPLOY_KEY" + docker buildx build --progress plain --push --platform linux/amd64,linux/arm64 --build-arg VESPA_VERSION=$VESPA_VERSION \ + --tag docker.io/vespaengine/vespa:$VESPA_VERSION --tag docker.io/vespaengine/vespa:latest . fi # Push to GitHub Container Registry -docker login --username aressem --password "$GHCR_DEPLOY_KEY" ghcr.io JWT=$(curl -sSL -u aressem:$GHCR_DEPLOY_KEY "https://ghcr.io/token?service=ghcr.io&scope=repository:vespa-engine/vespa:pull" | jq -re '.token') IMAGE_TAGS=$(curl -sSL -H "Authorization: Bearer $JWT" https://ghcr.io/v2/vespa-engine/vespa/tags/list | jq -re '.tags[]') if grep $VESPA_VERSION <<< "$IMAGE_TAGS" &> /dev/null; then echo "Container image ghcr.io/vespa-engine/vespa:$VESPA_VERSION aldready exists." else - docker push ghcr.io/vespa-engine/vespa:$VESPA_VERSION - docker push ghcr.io/vespa-engine/vespa:latest + docker login --username aressem --password "$GHCR_DEPLOY_KEY" ghcr.io + docker buildx build --progress plain --push --platform linux/amd64,linux/arm64 --build-arg VESPA_VERSION=$VESPA_VERSION \ + --tag ghcr.io/vespa-engine/vespa:$VESPA_VERSION --tag ghcr.io/vespa-engine/vespa:latest . fi |