Commit f55078d1 authored by Ben Gamari's avatar Ben Gamari 🐢

README: Update CI documentation

parent 9428d246
Pipeline #12118 failed with stage
in 139 minutes and 20 seconds
......@@ -145,40 +145,28 @@ $ nix build -f ./. --arg ghc "(import ghc-from-source.nix {ghc-path=$GHC_TREE;})
### GitLab CI
[GHC's GitLab instance](https://gitlab.haskell.org/ghc/head.hackage) uses
GitLab CI and `nix` to build a subset of the head.hackage package set using GHC
snapshots.
GitLab CI and the `head-hackage-ci` tool (contained in the `ci/` directory)
to test the `head.hackage` patchset against GHC releases and snapshots.
To run a similar build locally simply download a binary distribution from a
`x86_64-fedora27-linux` CI job and run:
To run a similar build locally start by downloading and installing a binary
distribution appropriate for your distribution and then call the `run-ci` script:
```
$ export GHC_TARBALL=./ghc-x86_64-fedora27-linux.tar.xz
# for extra correctness assurance...
$ export EXTRA_HC_OPTS=-dcore-lint
$ scripts/build-nix.sh
$ ./run-ci
```
This will build the set of packages defined by the `testedPackages` list in
`scripts/build-all.nix`.
This will build all packages having patches and produce a textual summary, as
well as a JSON file (`result.json`) describing the outcome.
After building `testedPackages` (allowing for failures) the script job runs
`scripts/summarize.py`, which produces a few artifacts:
* a JSON summary (`summary.json`) which includes the full dependency graph as
well as which package builds failed
* a DOT graph (`summary.dot`) showing the package depedencies and their build
success. This can be rendered with `scripts/render-graph.sh`.
* a directory (`./logs`) of build logs
Note that `build-nix.sh` can also be used to build packages not included in
`testedPackages`:
```
$ scripts/build-nix.sh pandoc
```
### Hackage repository
[GHC's GitLab instance](https://gitlab.haskell.org/ghc/head.hackage) uses
GitLab CI to deploy a Hackage repository with the patches provided by
`head.hackage`. See the [repository]() for usage instructions.
`head.hackage`. See the
[repository](http://ghc.gitlab.haskell.org/head.hackage/) for usage
instructions.
### Travis CI
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment