haskell.nix/.buildkite/pipeline.yml
Hamish Mackenzie 91036142ef
Better support for allow-import-from-derivation=false (#1474)
Currently haskell.nix uses IFDs internally in a number of places.  This prevents the use of `--option allow-import-from-derivation false` even when `materialized` nix is provided.

* Changes `materialize` function so that it returns the `materialized` path when possible instead of a derivation (updates import-and-filter-project.nix to cope with that).
* Materializes the spdx json file.
* Prevents haskell.nix looking for `cabal.project`, `cabal.project.local` and `cabal.project.freeze` files in hackage packages and the ghc-extra-projects.
2022-06-02 20:11:27 +12:00

47 lines
1.6 KiB
YAML

steps:
- label: 'Run tests with ghc8107'
command: "./test/tests.sh ghc8107"
agents:
system: x86_64-linux
- label: 'Check that jobset will evaluate in Hydra'
command:
- nix-build build.nix -A maintainer-scripts.check-hydra -o check-hydra.sh
- ./check-hydra.sh 0
- ./check-hydra.sh 1
- ./check-hydra.sh 2
- ./check-hydra.sh 3
agents:
system: x86_64-linux
- label: 'Check closure size with ghc8107'
command:
- nix-build build.nix -A maintainer-scripts.check-closure-size --argstr compiler-nix-name ghc8107 -o check-closure-size.sh
- echo "+++ Closure size (MB)"
- ./check-closure-size.sh
agents:
system: x86_64-linux
- label: 'Update docs'
command:
- nix-build build.nix -A maintainer-scripts.update-docs -o update-docs.sh
- ./update-docs.sh
agents:
system: x86_64-linux
- label: 'Make sure materialize function does not limit concurrency'
command:
- nix-build build.nix -A maintainer-scripts.check-materialization-concurrency -o check-materialization-concurrency.sh
- ./check-materialization-concurrency.sh
- label: 'Make sure non store paths like can be used as src'
command:
- nix-build build.nix -A maintainer-scripts.check-path-support --argstr compiler-nix-name ghc8107 -o check-path-support.sh
- ./check-path-support.sh
- label: 'Check that the haskell.nix roots do not require IFDs'
command:
- nix build .#roots.x86_64-linux --option allow-import-from-derivation false
agents:
system: x86_64-linux