Skip to content

Commit 3722ece

Browse files
committed
add multi-arch docker image support
1 parent a149639 commit 3722ece

File tree

2 files changed

+25
-6
lines changed

2 files changed

+25
-6
lines changed

.github/workflows/main.yml

+9-2
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,16 @@ jobs:
2828

2929
- run: yarn helm-lint
3030

31+
- name: Set up QEMU
32+
uses: docker/setup-qemu-action@v1
33+
34+
- name: Set up Docker Buildx
35+
uses: docker/setup-buildx-action@v1
36+
3137
- name: Login to GitHub Package Repository
3238
env:
3339
GH_TOKEN: ${{ secrets.GH_ACCESS_TOKEN }}
34-
run: docker login docker.pkg.github.com -u ${GH_USERNAME} -p ${GH_TOKEN}
40+
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
41+
3542
- name: Build Docker Image & Push
36-
run: yarn docker-build-prod --repository=docker.pkg.github.com/${GH_ORGNAME}/${REPO_NAME} --name=${REPO_NAME} --version=${GITHUB_SHA}
43+
run: yarn docker-build-prod --repository=ghcr.io/${{ github.repository_owner }} --name=${REPO_NAME} --version=${GITHUB_SHA} --platform=linux/amd64,linux/arm64

.github/workflows/release.yml

+16-4
Original file line numberDiff line numberDiff line change
@@ -40,21 +40,33 @@ jobs:
4040
- name: helm-chart-version-check
4141
run: yarn check-helm-chart-version deploy/${REPO_NAME}/Chart.yaml
4242

43+
- name: Set up QEMU
44+
uses: docker/setup-qemu-action@v1
45+
46+
- name: Set up Docker Buildx
47+
uses: docker/setup-buildx-action@v1
48+
4349
- name: Login to GitHub Package Repository
4450
env:
4551
GH_TOKEN: ${{ secrets.GH_ACCESS_TOKEN }}
46-
run: docker login docker.pkg.github.com -u ${GH_USERNAME} -p ${GH_TOKEN}
52+
run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
4753

4854
- name: Build Docker Image & Push to Github Registry
49-
run: yarn docker-build-prod --repository=docker.pkg.github.com/${GH_ORGNAME}/${REPO_NAME} --name=${REPO_NAME}
55+
run: yarn docker-build-prod --repository=ghcr.io/${{ github.repository_owner }} --name=${REPO_NAME} --version=${GITHUB_SHA} --platform=linux/amd64,linux/arm64
5056

5157
- name: Login to Docker Hub
5258
env:
5359
DH_TOKEN: ${{ secrets.DOCKER_HUB_PASSWORD }}
54-
run: docker login -u ${DH_USERNAME} -p ${DH_TOKEN}
60+
run: echo "${DH_TOKEN}" | docker login -u ${DH_USERNAME} --password-stdin
5561

5662
- name: Re-tag & Push Docker Image to Docker Hub
57-
run: yarn retag-and-push --fromPrefix=docker.pkg.github.com/${GH_ORGNAME}/${REPO_NAME}/ --fromName=${REPO_NAME}
63+
run: |
64+
PACKAGE_JSON_VERSION=$(jq -r ".version" package.json)
65+
chmod +r $HOME/.docker/config.json
66+
docker container run --rm --net host \
67+
-v regctl-conf:/home/appuser/.regctl/ \
68+
-v $HOME/.docker/config.json:/home/appuser/.docker/config.json \
69+
regclient/regctl:v0.3.9 image copy ghcr.io/${{ github.repository_owner }}/${REPO_NAME}:${GITHUB_SHA} docker.io/data61/${REPO_NAME}:${PACKAGE_JSON_VERSION}
5870
5971
- name: Configure Git
6072
run: |

0 commit comments

Comments
 (0)