From 9668cbac873c29677d6eb5c72b42241db73c5c07 Mon Sep 17 00:00:00 2001 From: Matthew McCormick Date: Wed, 21 May 2025 17:39:54 -0400 Subject: [PATCH 1/2] ci: specify tag when loading images for deployment If not specified, the default is `` instead of the expected latest-$(HOST_ARCH). --- .github/workflows/main.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 2001dcb..fe6bbd0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1534,8 +1534,8 @@ jobs: - name: load images run: | - xz -d -k < ./cache-${{ matrix.image_name }}-amd64/${{ matrix.image_name }}-amd64.tar.xz | docker import - dockcross/${{ matrix.image_name }}-amd64 - xz -d -k < ./cache-${{ matrix.image_name }}-arm64/${{ matrix.image_name }}-arm64.tar.xz | docker import - dockcross/${{ matrix.image_name }}-arm64 + xz -d -k < ./cache-${{ matrix.image_name }}-amd64/${{ matrix.image_name }}-amd64.tar.xz | docker import - dockcross/${{ matrix.image_name }}-amd64:latest-amd64 + xz -d -k < ./cache-${{ matrix.image_name }}-arm64/${{ matrix.image_name }}-arm64.tar.xz | docker import - dockcross/${{ matrix.image_name }}-arm64:latest-arm64 - name: Login to Docker Hub if: github.ref == 'refs/heads/master' @@ -1547,6 +1547,7 @@ jobs: - name: deploy-multi-arch if: github.ref == 'refs/heads/master' run: | + docker images make ${{ matrix.image_name }}.tag-amd64 make ${{ matrix.image_name }}.tag-arm64 From a10699233d68bd6d66e564ed525e56f03d53d495 Mon Sep 17 00:00:00 2001 From: Matthew McCormick Date: Wed, 21 May 2025 17:49:04 -0400 Subject: [PATCH 2/2] ci: mock HOST_ARCH for image tagging and push during deployment We want to apply the versioned tag. --- .github/workflows/main.yml | 6 ++++-- Makefile | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index fe6bbd0..6ad0829 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1550,9 +1550,11 @@ jobs: docker images make ${{ matrix.image_name }}.tag-amd64 - make ${{ matrix.image_name }}.tag-arm64 - make ${{ matrix.image_name }}.push-amd64 + + export HOST_ARCH=arm64 + make ${{ matrix.image_name }}.tag-arm64 make ${{ matrix.image_name }}.push-arm64 + unset HOST_ARCH make ${{ matrix.image_name }}.push diff --git a/Makefile b/Makefile index 1eb2bfc..4a826d6 100644 --- a/Makefile +++ b/Makefile @@ -30,7 +30,7 @@ TAG_FLAG := $(or $(TAG_FLAG), --tag) ORG = dockcross # Host architecture -HOST_ARCH := $(shell uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/') +HOST_ARCH := $(or $(HOST_ARCH), shell uname -m | sed -e 's/x86_64/amd64/' -e 's/aarch64/arm64/') # Directory where to generate the dockcross script for each images (e.g bin/dockcross-manylinux2014-x64) BIN = ./bin