Name: stackage-head
Owner: Tweag I/O
Description: Stackage builds based on GHC HEAD
Created: 2017-11-07 05:52:09.0
Updated: 2018-05-24 07:41:35.0
Pushed: 2018-05-24 07:41:34.0
Homepage: null
Size: 614
Language: Haskell
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
This project is an effort to build Stackage with arbitrary GHC development versions and, in particular, with the development HEAD. This allows us to detect regressions during GHC development much faster.
The process is currently run on Circle CI twice a day and can be described as the following progression of steps:
Start with the docker container that is used to build Stackage Nightly,
snoyberg/stackage:nightly
.
To avoid re-compiling GHC every time we use build artifacts and some
associated metadata provided by
ghc-artifact-collector
.
Download Stackage curator that is used to execute build plans.
Reuse a plan from the
stackage-nightly
repository. These plans are known to build fine, so they are OK for us in
most cases, and even if a couple of packages cannot be built it's not a
big deal and can be detected as usual (see below).
Execute the chosen build plan and save build log.
Parse the build log and turn it into a build report, store it for next runs.
Compare two most recent build reports and detect regressions. Fail if there are suspicious changes (which are necessarily due to some changes in GHC, because we build always with the same build plan, only changing GHC commits).
GHC team is notified if the build fails.
Copyright © 2018 Tweag I/O
Distributed under BSD 3 clause license.