fix(ci): matrix does not support if so skip the build via workarounds

This commit is contained in:
Makito
2026-01-16 03:08:23 +09:00
parent 4d2f897a2b
commit 01d8f8dba7
+18 -10
View File
@@ -54,43 +54,51 @@ jobs:
matrix:
include:
- if: ${{ inputs.platform == 'all' || inputs.platform == 'macos' }}
os: macos-15-intel
- os: macos-15-intel
artifact: darwin-x64
target: x86_64-apple-darwin
arch: x64
builder-args: --macos --x64
skip: ${{ inputs.platform == 'all' || inputs.platform == 'macos' }}
- if: ${{ inputs.platform == 'all' || inputs.platform == 'macos' }}
os: macos-latest
- os: macos-latest
artifact: darwin-arm64
target: aarch64-apple-darwin
builder-args: --macos --arm64
arch: arm64
skip: ${{ inputs.platform == 'all' || inputs.platform == 'macos' }}
- if: ${{ inputs.platform == 'all' || inputs.platform == 'linux' }}
os: ubuntu-latest
- os: ubuntu-latest
artifact: linux-x64
target: x86_64-unknown-linux-gnu
builder-args: --linux --x64
arch: x64
skip: ${{ inputs.platform == 'all' || inputs.platform == 'linux' }}
- if: ${{ inputs.platform == 'all' || inputs.platform == 'linux' }}
os: ubuntu-24.04-arm
- os: ubuntu-24.04-arm
artifact: linux-arm64
target: aarch64-unknown-linux-gnu
builder-args: --linux --arm64
arch: arm64
skip: ${{ inputs.platform == 'all' || inputs.platform == 'linux' }}
- if: ${{ inputs.platform == 'all' || inputs.platform == 'windows' }}
os: windows-latest
- os: windows-latest
artifact: windows-x64-setup
target: x86_64-pc-windows-msvc
builder-args: --windows --x64
arch: x64
skip: ${{ inputs.platform == 'all' || inputs.platform == 'windows' }}
runs-on: ${{ matrix.os }}
steps:
- name: Skip the build (fail fast)
if: matrix.skip
run: |
echo "Skipping build for ${{ matrix.os }}..."
echo "This will fail the job, but don't panic—this is expected when not building for all."
echo "This will be improved in the future."
exit 1
# Why?
#
# failed to build archive at `/home/runner/work/airi/airi/target/x86_64-unknown-linux-gnu/release/deps/libapp_lib.rlib`: