forgejo-pages/.forgejo/workflows/build-docker.yml
2025-01-06 16:32:03 +08:00

47 lines
1.3 KiB
YAML

on:
push:
jobs:
docker:
runs-on: any
steps:
- name: Set up qemu for buildx
uses: docker/setup-qemu-action@v3
- name: Setup buildx
uses: docker/setup-buildx-action@v3
with:
platforms: linux/amd64,linux/arm64
- name: Login
uses: docker/login-action@v3
with:
registry: git.ronmi.tw
username: ronmi
password: ${{ secrets.PACKAGE_PUSH_KEY }}
- name: Setup go
uses: actions/setup-go@v5
with:
go-version: "1.23"
- name: Build arm64 binary
run: GOARCH=arm64 go build
- name: Build arm64 image
uses: docker/build-push-action@v6
with:
context: .
platforms: linux/arm64
push: true
pull: true
tags: git.ronmi.tw/ronmi/forgejo-pages:arm64
- name: Build amd64 binary
run: GOARCH=amd64 go build
- name: Build amd64 image
uses: docker/build-push-action@v6
with:
context: .
platforms: linux/amd64
push: true
pull: true
tags: git.ronmi.tw/ronmi/forgejo-pages:amd64
- name: Create multiarch image
run: docker buildx imagetools create -t git.ronmi.tw/ronmi/forgejo-pages git.ronmi.tw/ronmi/forgejo-pages:arm64 git.ronmi.tw/ronmi/forgejo-pages:amd64