1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-07-07 06:01:48 +02:00

Split building and testing to improve parallelism

This commit is contained in:
Eelco Dolstra 2024-07-11 13:25:39 +02:00
parent 13e60dd649
commit a4d1dfbab6
2 changed files with 41 additions and 2 deletions

21
.github/workflows/build.yml vendored Normal file
View file

@ -0,0 +1,21 @@
on:
workflow_call:
inputs:
os:
required: true
type: string
jobs:
tests:
strategy:
fail-fast: false
runs-on: ${{ inputs.os }}
timeout-minutes: 60
steps:
- uses: actions/checkout@v4
- uses: DeterminateSystems/nix-installer-action@main
with:
flakehub: true
- uses: DeterminateSystems/magic-nix-cache-action@main
- run: nix build

View file

@ -14,23 +14,41 @@ permissions:
jobs:
build_x86_64-linux:
uses: ./.github/workflows/build.yml
with:
os: UbuntuLatest32Cores128G
build_aarch64-linux:
uses: ./.github/workflows/build.yml
with:
os: UbuntuLatest32Cores128GArm
build_aarch64-darwin:
uses: ./.github/workflows/build.yml
with:
os: macos-latest
test_x86_64-linux:
uses: ./.github/workflows/test.yml
needs: build_x86_64-linux
with:
os: UbuntuLatest32Cores128G
test_aarch64-linux:
uses: ./.github/workflows/test.yml
needs: build_aarch64-linux
with:
os: UbuntuLatest32Cores128GArm
test_aarch64-darwin:
uses: ./.github/workflows/test.yml
needs: build_aarch64-darwin
with:
os: macos-latest
vm_tests:
needs: test_x86_64-linux
needs: build_x86_64-linux
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
@ -41,7 +59,7 @@ jobs:
- run: nix build -L .#hydraJobs.tests.githubFlakes .#hydraJobs.tests.tarballFlakes
flake_regressions:
needs: test_x86_64-linux
needs: build_x86_64-linux
runs-on: ubuntu-22.04
steps:
- name: Checkout nix