diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index db9f542..7df0dd8 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -123,8 +123,16 @@ jobs: retention-days: 1 deb: - name: Debian package - runs-on: ubuntu-latest + name: Debian package (${{ matrix.arch }}) + runs-on: ${{ matrix.runner }} + strategy: + fail-fast: false + matrix: + include: + - arch: amd64 + runner: ubuntu-latest + - arch: arm64 + runner: ubuntu-24.04-arm steps: - uses: actions/checkout@v4 @@ -232,14 +240,22 @@ jobs: - name: Upload .deb artifacts uses: actions/upload-artifact@v4 with: - name: deb-packages + name: deb-packages-${{ matrix.arch }} path: '*.deb' retention-days: 1 rpm: - name: Fedora RPM package - runs-on: ubuntu-latest + name: Fedora RPM package (${{ matrix.arch }}) + runs-on: ${{ matrix.runner }} container: fedora:latest + strategy: + fail-fast: false + matrix: + include: + - arch: x86_64 + runner: ubuntu-latest + - arch: aarch64 + runner: ubuntu-24.04-arm steps: - uses: actions/checkout@v4 @@ -262,9 +278,9 @@ jobs: ~/.cargo/registry ~/.cargo/git target - key: fedora-cargo-pkg-${{ hashFiles('**/Cargo.lock') }} + key: fedora-${{ matrix.arch }}-cargo-pkg-${{ hashFiles('**/Cargo.lock') }} restore-keys: | - fedora-cargo-pkg- + fedora-${{ matrix.arch }}-cargo-pkg- - name: Build release binaries run: cargo build --release --workspace @@ -365,7 +381,7 @@ jobs: - name: Upload RPM artifacts uses: actions/upload-artifact@v4 with: - name: rpm-packages + name: rpm-packages-${{ matrix.arch }} path: '*.rpm' retention-days: 1