The build job creates an artifact that subsequent jobs download to run the tests. The jobs that actually run the tests cannot use cabal list-bin because the artifact doesn't include enough of the build data. We can simplify finding the binaries by having the artifact include symlinks to the binaries, created in the build job where cabal list-bin still works.
The artifact included some bits that seem redundant since PR #2403, they have been removed.
The minimum version of cabal-install that contains a properly working list-bin command is 3.8.1.0. Because of the fixed security issue, we instead update cabal-install to 3.10.2.0 for all GHC's in CI.
GHC versions in CI are updated to the latest point release.
Fixed a mistake in the Docker image: use the same Ubuntu version for building and for running.
In GitLab CI, the after_script cannot use environment variables set in before_script or script. We use zstd -T$THREADS in after_script. Before this commit, that rendered to zstd -T which happens to mean "use all cores" and worked fine but was unintended.
Triggered child pipelines (.ci/gitlab/test.yml) did not have interruptible: true set. Moved the default section into .ci/gitlab/common.yml.
Still TODO:
Write a changelog entry (see changelog/README.md)
[x] Check copyright notices are up to date in edited files
The
build
job creates an artifact that subsequent jobs download to run the tests. The jobs that actually run the tests cannot usecabal list-bin
because the artifact doesn't include enough of the build data. We can simplify finding the binaries by having the artifact include symlinks to the binaries, created in thebuild
job wherecabal list-bin
still works.The artifact included some bits that seem redundant since PR #2403, they have been removed.
The minimum version of
cabal-install
that contains a properly workinglist-bin
command is 3.8.1.0. Because of the fixed security issue, we instead updatecabal-install
to 3.10.2.0 for all GHC's in CI.GHC versions in CI are updated to the latest point release.
Fixed a mistake in the Docker image: use the same Ubuntu version for building and for running.
In GitLab CI, the
after_script
cannot use environment variables set inbefore_script
orscript
. We usezstd -T$THREADS
inafter_script
. Before this commit, that rendered tozstd -T
which happens to mean "use all cores" and worked fine but was unintended.Triggered child pipelines (
.ci/gitlab/test.yml
) did not haveinterruptible: true
set. Moved thedefault
section into.ci/gitlab/common.yml
.Still TODO:
Write a changelog entry (see changelog/README.md)