Skip to content

Add support for arm64 and multi-arch builds #189

Add support for arm64 and multi-arch builds

Add support for arm64 and multi-arch builds #189

Workflow file for this run

name: Push to other branches
on:
push:
branches-ignore:
- master
jobs:
labels:
name: Repo labels
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Labels' config
shell: bash
run: |
mkdir -p .tmp
curl -LsS https://raw.githubusercontent.com/devops-infra/.github/master/.github/labels.yml -o .tmp/labels.yml
- name: Update labels (dry run)
uses: crazy-max/[email protected]
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
yaml-file: .tmp/labels.yml
dry-run: true
lint:
name: Linters
if: "!startsWith(github.ref, 'refs/heads/dependabot')"
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Hadolint
uses: hadolint/[email protected]
with:
dockerfile: Dockerfile
build_and_push:
name: Build & push
if: "!startsWith(github.ref, 'refs/heads/dependabot')"
runs-on: ubuntu-24.04-arm
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Docker Buildx
uses: docker/[email protected]
with:
install: true
- name: QEMU
uses: docker/[email protected]
with:
image: tonistiigi/binfmt:latest
platforms: amd64,arm64
- name: Build & push
env:
DOCKER_BUILDKIT: 1
DOCKER_TOKEN: ${{ secrets.DOCKER_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TERM: xterm-256color
run: make push VERSION_PREFIX=test-
pull_request:
name: Create Pull Request
runs-on: ubuntu-24.04
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Template
shell: bash
run: |
mkdir -p .tmp
curl -LsS https://raw.githubusercontent.com/devops-infra/.github/master/PULL_REQUEST_TEMPLATE.md -o .tmp/PULL_REQUEST_TEMPLATE.md
- name: PR - bugfix (conditional)
if: startsWith(github.ref, 'refs/heads/bug')
uses: devops-infra/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
assignee: ${{ github.actor }}
label: bugfix
template: .tmp/PULL_REQUEST_TEMPLATE.md
get_diff: true
- name: PR - dependency (conditional)
if: "startsWith(github.ref, 'refs/heads/dep') && !startsWith(github.ref, 'refs/heads/dependabot')"
uses: devops-infra/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
assignee: ${{ github.actor }}
label: dependency
template: .tmp/PULL_REQUEST_TEMPLATE.md
get_diff: true
- name: PR - documentation (conditional)
if: startsWith(github.ref, 'refs/heads/doc')
uses: devops-infra/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
assignee: ${{ github.actor }}
label: documentation
template: .tmp/PULL_REQUEST_TEMPLATE.md
get_diff: true
- name: PR - feature (conditional)
if: startsWith(github.ref, 'refs/heads/feat')
uses: devops-infra/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
assignee: ${{ github.actor }}
label: feature
template: .tmp/PULL_REQUEST_TEMPLATE.md
get_diff: true
- name: PR - test (conditional)
if: startsWith(github.ref, 'refs/heads/test')
uses: devops-infra/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
assignee: ${{ github.actor }}
reviewer: ${{ github.actor }}
label: test
template: .tmp/PULL_REQUEST_TEMPLATE.md
draft: true
get_diff: true
- name: PR - test (conditional)
if: "!startsWith(github.ref, 'refs/heads/bug') && !startsWith(github.ref, 'refs/heads/dep') && !startsWith(github.ref, 'refs/heads/doc') && !startsWith(github.ref, 'refs/heads/feat') && !startsWith(github.ref, 'refs/heads/test')"
uses: devops-infra/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
assignee: ${{ github.actor }}
label: feature
template: .tmp/PULL_REQUEST_TEMPLATE.md
get_diff: true