From 7edf75add75f2f4279e3a7e145f0721768cb04fb Mon Sep 17 00:00:00 2001 From: Wei Ji <23487320+weiji14@users.noreply.github.com> Date: Tue, 2 Jul 2024 06:45:12 +1200 Subject: [PATCH] Publish CalVer tags for linux/arm64 platform builds (#564) The base-image, base-notebook and pangeo-notebook Docker images only had linux/amd64 platform available on the CalVer tags. Need to use the `--platform` flag when doing `docker pull` or `docker push` to explicitly tag the linux/arm64 images too. --- .github/workflows/Publish.yml | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/.github/workflows/Publish.yml b/.github/workflows/Publish.yml index e246d245..b0006c1c 100644 --- a/.github/workflows/Publish.yml +++ b/.github/workflows/Publish.yml @@ -17,6 +17,15 @@ jobs: fail-fast: false matrix: IMAGE: [base-image, base-notebook, pangeo-notebook, ml-notebook, pytorch-notebook] + platform: [linux/amd64] + # Extra CPU architectures for specific images + include: + - IMAGE: "base-image" + platform: "linux/arm64" + - IMAGE: "base-notebook" + platform: "linux/arm64" + - IMAGE: "pangeo-notebook" + platform: "linux/arm64" name: ${{ matrix.IMAGE }} runs-on: ubuntu-latest steps: @@ -57,7 +66,7 @@ jobs: - name: Pull Image for Corresponding GitHub Commit run: | - docker pull ${DOCKER_ORG}/${{ matrix.IMAGE }}:${SHA7} + docker pull --platform ${{ matrix.platform }} ${DOCKER_ORG}/${{ matrix.IMAGE }}:${SHA7} - name: Retag Images run: | @@ -68,10 +77,10 @@ jobs: - name: Push Tags to Docker Hub run: | - docker push ${DOCKER_ORG}/${{ matrix.IMAGE }}:latest - docker push ${DOCKER_ORG}/${{ matrix.IMAGE }}:${TAG} + docker push --platform ${{ matrix.platform }} ${DOCKER_ORG}/${{ matrix.IMAGE }}:latest + docker push --platform ${{ matrix.platform }} ${DOCKER_ORG}/${{ matrix.IMAGE }}:${TAG} - name: Push Tags To Quay.io run: | - docker push quay.io/${DOCKER_ORG}/${{ matrix.IMAGE }}:latest - docker push quay.io/${DOCKER_ORG}/${{ matrix.IMAGE }}:${TAG} + docker push --platform ${{ matrix.platform }} quay.io/${DOCKER_ORG}/${{ matrix.IMAGE }}:latest + docker push --platform ${{ matrix.platform }} quay.io/${DOCKER_ORG}/${{ matrix.IMAGE }}:${TAG}