Skip to content

Add an arm64 container using QEMU #713

Add an arm64 container using QEMU

Add an arm64 container using QEMU #713

Workflow file for this run

name: Create images
on:
pull_request:
workflow_dispatch:
push:
branches:
- main
schedule:
# every day
- cron: '10 0 * * *'
jobs:
build:
strategy:
matrix:
image:
- distro: alma8
- distro: alma9
- distro: alma9
arch: ARM64
- distro: alma9-clang
- distro: debian125
- distro: fedora39
- distro: fedora40
- distro: ubuntu20
- distro: ubuntu22
- distro: ubuntu2404
fail-fast: false
runs-on: ${{ matrix.image.arch == null && 'ubuntu-latest' || matrix.image.arch }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Container Registry
if: github.event_name != 'pull_request'
uses: docker/login-action@v3
with:
registry: registry.cern.ch
username: robot-root-ci+github
password: ${{ secrets.CR_PAT }}
- name: Build and push
uses: docker/build-push-action@v5
with:
context: ./${{ matrix.image.distro }}/
push: ${{ github.event_name != 'pull_request' }}
tags: registry.cern.ch/root-ci/${{ matrix.image.distro }}${{ matrix.image.arch}}:buildready
labels: org.opencontainers.image.source=https://github.com/${{ github.repository }}
no-cache: ${{ github.event_name != 'push' && github.event_name != 'pull_request' }}
cache-from: type=gha,scope=${{ matrix.image.distro }}
cache-to: type=gha,mode=max,scope=${{ matrix.image.distro }}