From: Jo Zzsi Date: Sat, 10 Jan 2026 12:19:44 +0000 (-0500) Subject: ci: combine basic x64 and arm64 into one GitHub action X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f8382da2001f17dd99259f6a5e56366d93d19f02;p=thirdparty%2Fdracut-ng.git ci: combine basic x64 and arm64 into one GitHub action Running tests on arm64 is just as stable as x64, there is no need to separate them. Combine them into one GitHub action should make it easier to reason about regressions. --- diff --git a/.github/workflows/daily-basic-arm64.yml b/.github/workflows/daily-basic-arm64.yml deleted file mode 100644 index 0b0a32265..000000000 --- a/.github/workflows/daily-basic-arm64.yml +++ /dev/null @@ -1,52 +0,0 @@ ---- -name: Daily Tests - basic (arm64) - -on: # yamllint disable-line rule:truthy - schedule: - - cron: '30 23 * * *' # every day at 23:30 UTC - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - - pull_request: - paths: - - '.github/workflows/daily-basic-arm64.yml' - -jobs: - basic: - name: ${{ matrix.test }} on ${{ matrix.container }} on arm64 - runs-on: ubuntu-24.04-arm - timeout-minutes: 20 - concurrency: - group: daily-basic-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-arm - cancel-in-progress: true - strategy: - fail-fast: false - matrix: - container: - - debian:latest - - debian:sid - - gentoo:latest - - opensuse:latest - - ubuntu:devel - - ubuntu:rolling - - void:latest - test: - - "10" - - "11" - - "13" - - "20" - - "26" - - "30" - - "50" - - "80" - - "81" - - "82" - container: - image: ghcr.io/dracut-ng/${{ matrix.container }}-arm - options: '--device=/dev/kvm --privileged' - steps: - - name: "Checkout Repository" - uses: actions/checkout@v6 - - name: "${{ matrix.container }} TEST-${{ matrix.test }}" - run: ./test/test-container.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} diff --git a/.github/workflows/daily-basic-x64.yml b/.github/workflows/daily-basic-x64.yml deleted file mode 100644 index 8b32d2494..000000000 --- a/.github/workflows/daily-basic-x64.yml +++ /dev/null @@ -1,63 +0,0 @@ ---- -name: Daily Tests - basic (x64) - -on: # yamllint disable-line rule:truthy - schedule: - - cron: '30 23 * * *' # every day at 23:30 UTC - - # Allows you to run this workflow manually from the Actions tab - workflow_dispatch: - - pull_request: - paths: - - '.github/workflows/daily-basic-x64.yml' - -jobs: - basic: - name: ${{ matrix.test }} on ${{ matrix.container }} - runs-on: ubuntu-24.04 - timeout-minutes: 20 - concurrency: - group: daily-basic-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-amd - cancel-in-progress: true - strategy: - fail-fast: false - matrix: - container: - - alpine:edge - - arch:latest - - azurelinux:3.0 - - debian:latest - - debian:sid - - fedora:latest - - fedora:rawhide - - centos:latest - - gentoo:latest - - gentoo:amd64-openrc - - opensuse:latest - - ubuntu:devel - - ubuntu:rolling - - void:latest - test: - - "10" - - "11" - - "13" - - "20" - - "26" - - "30" - - "50" - - "80" - - "81" - - "82" - exclude: - # btrfs kernel module is not available on CentOS Stream 10 - - container: centos:latest - test: "11" - container: - image: ghcr.io/dracut-ng/${{ matrix.container }}-amd - options: '--device=/dev/kvm --privileged' - steps: - - name: "Checkout Repository" - uses: actions/checkout@v6 - - name: "${{ matrix.container }} TEST-${{ matrix.test }}" - run: ./test/test-container.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} diff --git a/.github/workflows/daily-basic.yml b/.github/workflows/daily-basic.yml new file mode 100644 index 000000000..1f36d0093 --- /dev/null +++ b/.github/workflows/daily-basic.yml @@ -0,0 +1,98 @@ +--- +name: Daily Tests - basic + +on: # yamllint disable-line rule:truthy + schedule: + - cron: '30 23 * * *' # every day at 23:30 UTC + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + + pull_request: + paths: + - '.github/workflows/daily-basic.yml' + +jobs: + basic: + name: ${{ matrix.test }} on ${{ matrix.container }} on ${{ matrix.architecture.tag }} + runs-on: ${{ matrix.architecture.runner }} + timeout-minutes: 20 + concurrency: + group: daily-basic-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.architecture.tag }} + cancel-in-progress: true + strategy: + fail-fast: false + matrix: + architecture: + - {runner: 'ubuntu-24.04', tag: 'amd'} + - {runner: 'ubuntu-24.04-arm', tag: 'arm'} + container: + - debian:latest + - debian:sid + - gentoo:latest + - opensuse:latest + - ubuntu:devel + - ubuntu:rolling + - void:latest + test: + - "10" + - "11" + - "13" + - "20" + - "26" + - "30" + - "50" + - "80" + - "81" + - "82" + container: + image: ghcr.io/dracut-ng/${{ matrix.container }}-${{ matrix.architecture.tag }} + options: '--device=/dev/kvm --privileged' + steps: + - name: "Checkout Repository" + uses: actions/checkout@v6 + - name: "${{ matrix.container }} TEST-${{ matrix.test }}" + run: ./test/test-container.sh "TEST-${{ matrix.test }}" ${{ matrix.test }} + extended: + name: ${{ matrix.test }} on ${{ matrix.container }} on ${{ matrix.architecture.tag }} + runs-on: ${{ matrix.architecture.runner }} + timeout-minutes: 20 + concurrency: + group: daily-basic-extended-${{ github.workflow }}-${{ github.ref }}-${{ matrix.container }}-${{ matrix.test }}-${{ matrix.architecture.tag }} + cancel-in-progress: true + strategy: + fail-fast: false + matrix: + architecture: + - {runner: 'ubuntu-24.04', tag: 'amd'} + container: + - alpine:edge + - arch:latest + - azurelinux:3.0 + - fedora:latest + - fedora:rawhide + - centos:latest + - gentoo:amd64-openrc + test: + - "10" + - "11" + - "13" + - "20" + - "26" + - "30" + - "50" + - "80" + - "81" + - "82" + exclude: + # btrfs kernel module is not available on CentOS Stream 10 + - container: centos:latest + test: "11" + container: + image: ghcr.io/dracut-ng/${{ matrix.container }}-${{ matrix.architecture.tag }} + options: '--device=/dev/kvm --privileged' + steps: + - name: "Checkout Repository" + uses: actions/checkout@v6 + - name: "${{ matrix.container }} TEST-${{ matrix.test }}" + run: ./test/test-container.sh "TEST-${{ matrix.test }}" ${{ matrix.test }}