1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
|
name: multiarch test for rolling distros
on:
push:
branches:
- master
- queue
- tip
- 'stable-*'
paths:
- '.github/workflows/multiarch.yaml'
- '**.h'
- '**.c'
- '**Makefile*'
- '**.mk'
pull_request:
branches:
- master
- queue
- 'stable-*'
paths:
- '.github/workflows/multiarch.yaml'
- '**.h'
- '**.c'
- '**Makefile*'
- '**.mk'
# run monthly to catch rolling distro changes
schedule:
- cron: '45 02 1 * *'
jobs:
build-current:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
os:
- alpine
- debian-sid
- fedora-rawhide
- opensuse-tumbleweed
arch: [ppc64le, s390x, 386, arm/v7]
exclude:
- os: fedora-rawhide
arch: 386
- os: fedora-rawhide
arch: arm/v7
include:
- os: alpine
arch: aarch64
steps:
- name: checkout
uses: actions/checkout@v4
- name: enable foreign arch
uses: docker/setup-qemu-action@v2
with:
image: tonistiigi/binfmt:latest
- name: compile and run unit tests
id: test
uses: mosteo-actions/docker-run@v1
with:
image: ghcr.io/mwilck/multipath-build-${{ matrix.os }}
guest-dir: /build
host-dir: ${{ github.workspace }}
command: test
params: "--platform linux/${{ matrix.arch }}"
pull-params: "--platform linux/${{ matrix.arch }}"
continue-on-error: true
- name: create binary archive
uses: mosteo-actions/docker-run@v1
with:
image: ghcr.io/mwilck/multipath-build-${{ matrix.os }}
guest-dir: /build
host-dir: ${{ github.workspace }}
command: test-progs.tar
params: "--platform linux/${{ matrix.arch }}"
pull-params: "--platform linux/${{ matrix.arch }}"
if: steps.test.outcome != 'success'
- name: upload binary archive
uses: actions/upload-artifact@v4
with:
name: binaries-${{ matrix.os }}-${{ matrix.arch }}
path: test-progs.tar
if: steps.test.outcome != 'success'
- name: fail
run: /bin/false
if: steps.test.outcome != 'success'
|