mirror of
https://github.com/NixOS/nix.git
synced 2025-11-15 15:02:42 +01:00
Parallelize the flake regression suite
This commit is contained in:
parent
49a059d426
commit
c7d80871ac
1 changed files with 20 additions and 32 deletions
52
.github/workflows/build.yml
vendored
52
.github/workflows/build.yml
vendored
|
|
@ -95,7 +95,8 @@ jobs:
|
||||||
if: |
|
if: |
|
||||||
(inputs.run_regression_tests && github.event_name == 'merge_group')
|
(inputs.run_regression_tests && github.event_name == 'merge_group')
|
||||||
|| (
|
|| (
|
||||||
github.event.pull_request.head.repo.full_name == 'DeterminateSystems/nix-src'
|
inputs.run_regression_tests
|
||||||
|
&& github.event.pull_request.head.repo.full_name == 'DeterminateSystems/nix-src'
|
||||||
&& (
|
&& (
|
||||||
(github.event.action == 'labeled' && github.event.label.name == 'flake-regression-test')
|
(github.event.action == 'labeled' && github.event.label.name == 'flake-regression-test')
|
||||||
|| (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, 'flake-regression-test'))
|
|| (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, 'flake-regression-test'))
|
||||||
|
|
@ -103,6 +104,16 @@ jobs:
|
||||||
)
|
)
|
||||||
needs: build
|
needs: build
|
||||||
runs-on: ${{ inputs.runner }}
|
runs-on: ${{ inputs.runner }}
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
nix_config:
|
||||||
|
- "lazy-trees = true"
|
||||||
|
- "lazy-trees = false"
|
||||||
|
glob:
|
||||||
|
- "[0-d]*"
|
||||||
|
- "[e-l]*"
|
||||||
|
- "[m-r]*"
|
||||||
|
- "[s-z]*"
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout nix
|
- name: Checkout nix
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
@ -118,36 +129,14 @@ jobs:
|
||||||
path: flake-regressions/tests
|
path: flake-regressions/tests
|
||||||
- uses: DeterminateSystems/determinate-nix-action@main
|
- uses: DeterminateSystems/determinate-nix-action@main
|
||||||
- uses: DeterminateSystems/flakehub-cache-action@main
|
- uses: DeterminateSystems/flakehub-cache-action@main
|
||||||
- run: nix build -L --out-link ./new-nix && PATH=$(pwd)/new-nix/bin:$PATH PARALLEL="-P 50%" flake-regressions/eval-all.sh
|
- env:
|
||||||
|
PARALLEL: "-P 50%"
|
||||||
flake_regressions_lazy:
|
FLAKE_REGRESSION_GLOB: ${{ matrix.glob }}
|
||||||
if: |
|
NIX_CONFIG: ${{ matrix.nix_config }}
|
||||||
(inputs.run_regression_tests && github.event_name == 'merge_group')
|
run: |
|
||||||
|| (
|
nix build -L --out-link ./new-nix
|
||||||
github.event.pull_request.head.repo.full_name == 'DeterminateSystems/nix-src'
|
export PATH=$(pwd)/new-nix/bin:$PATH
|
||||||
&& (
|
flake-regressions/eval-all.sh
|
||||||
(github.event.action == 'labeled' && github.event.label.name == 'flake-regression-test')
|
|
||||||
|| (github.event.action != 'labeled' && contains(github.event.pull_request.labels.*.name, 'flake-regression-test'))
|
|
||||||
)
|
|
||||||
)
|
|
||||||
needs: build
|
|
||||||
runs-on: ${{ inputs.runner }}
|
|
||||||
steps:
|
|
||||||
- name: Checkout nix
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
- name: Checkout flake-regressions
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
repository: DeterminateSystems/flake-regressions
|
|
||||||
path: flake-regressions
|
|
||||||
- name: Checkout flake-regressions-data
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
repository: DeterminateSystems/flake-regressions-data
|
|
||||||
path: flake-regressions/tests
|
|
||||||
- uses: DeterminateSystems/determinate-nix-action@main
|
|
||||||
- uses: DeterminateSystems/flakehub-cache-action@main
|
|
||||||
- run: nix build -L --out-link ./new-nix && PATH=$(pwd)/new-nix/bin:$PATH PARALLEL="-P 50%" NIX_CONFIG="lazy-trees = true" flake-regressions/eval-all.sh
|
|
||||||
|
|
||||||
manual:
|
manual:
|
||||||
if: github.event_name != 'merge_group'
|
if: github.event_name != 'merge_group'
|
||||||
|
|
@ -190,7 +179,6 @@ jobs:
|
||||||
- vm_tests_smoke
|
- vm_tests_smoke
|
||||||
- vm_tests_all
|
- vm_tests_all
|
||||||
- flake_regressions
|
- flake_regressions
|
||||||
- flake_regressions_lazy
|
|
||||||
- manual
|
- manual
|
||||||
if: ${{ always() }}
|
if: ${{ always() }}
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue