CI/CD: Add target arch matrix

This commit is contained in:
daijro 2024-08-16 18:00:21 -05:00
parent 1d31bad14e
commit 73386d6b9f
2 changed files with 13 additions and 8 deletions

View file

@ -12,6 +12,14 @@ jobs:
strategy: strategy:
matrix: matrix:
target: [linux, windows, macos] target: [linux, windows, macos]
arch: [x86_64, arm64, i686]
exclude:
# Fails (.mozbuild does not include clang++-cl)
- target: windows
arch: arm64
# Unsuported
- target: macos
arch: i686
steps: steps:
- name: Maximize build space - name: Maximize build space
@ -96,18 +104,12 @@ jobs:
free -h free -h
- name: Build - name: Build
run: python3 ./multibuild.py --target ${{ matrix.target }} --arch x86_64 run: python3 ./multibuild.py --target ${{ matrix.target }} --arch ${{ matrix.arch }}
- name: Save .mozbuild cache
uses: actions/cache/save@v3
with:
path: ~/.mozbuild
key: mozbuild-${{ matrix.target }}
- name: Upload artifacts - name: Upload artifacts
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:
name: CamoufoxBuilds-${{ matrix.target }} name: CamoufoxBuilds-${{ matrix.target }}-${{ matrix.arch }}
path: dist/* path: dist/*
release: release:

View file

@ -121,6 +121,9 @@ def main():
# Run build # Run build
for target in args.target: for target in args.target:
for arch in args.arch: for arch in args.arch:
if (target, arch) in [("windows", "arm64"), ("macos", "i686")]:
print(f"Skipping {target} {arch}: Unsuported architecture.")
continue
run_build(target, arch) run_build(target, arch)