aboutsummaryrefslogtreecommitdiffstats
path: root/screwdriver/release-container-image.sh
diff options
context:
space:
mode:
authorArnstein Ressem <aressem@yahooinc.com>2022-08-16 15:09:56 +0200
committerArnstein Ressem <aressem@yahooinc.com>2022-08-16 15:09:56 +0200
commit2e4967745646eae351bd2bad9efe1e58dafc9be0 (patch)
tree274a032e9d77e848f6e5e6da6f3534aa8ed3f046 /screwdriver/release-container-image.sh
parent5c15236363db05ce5d469c9f37ff39bb0127023f (diff)
Release multi-arch images.
Diffstat (limited to 'screwdriver/release-container-image.sh')
-rwxr-xr-xscrewdriver/release-container-image.sh26
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