[commit: ghc] master: gitlab-ci: Split build into two halves (68d6a71)
git at git.haskell.org
git at git.haskell.org
Wed Dec 19 19:06:32 UTC 2018
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/68d6a71646de52096ebc196320332a2d98daeb47/ghc
>---------------------------------------------------------------
commit 68d6a71646de52096ebc196320332a2d98daeb47
Author: Ben Gamari <ben at smart-cactus.org>
Date: Wed Dec 19 11:49:25 2018 -0500
gitlab-ci: Split build into two halves
Currently we are having quite some trouble keeping up with our build volume due
to the number of configurations we have. I've split the pipeline into two
halves:
* build, which builds just vanilla deb9-linux with make and hadrian
* full-build, which builds everything else
This will trade-off some latency to more efficient use of our builders.
>---------------------------------------------------------------
68d6a71646de52096ebc196320332a2d98daeb47
.gitlab-ci.yml | 19 +++++++++++++++----
1 file changed, 15 insertions(+), 4 deletions(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b766092..0fb8192 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -6,6 +6,7 @@ variables:
stages:
- lint
- build
+ - full-build
############################################################
# Linting
@@ -30,7 +31,6 @@ ghc-linters:
############################################################
.validate-hadrian:
- stage: build
allow_failure: true
script:
- bash .circleci/prepare-system.sh
@@ -45,6 +45,7 @@ ghc-linters:
validate-x86_64-linux-deb8-hadrian:
extends: .validate-hadrian
+ stage: build
image: ghcci/x86_64-linux-deb8:0.1
before_script:
# workaround for docker permissions
@@ -57,7 +58,6 @@ validate-x86_64-linux-deb8-hadrian:
############################################################
.validate:
- stage: build
variables:
TEST_TYPE: test
script:
@@ -83,6 +83,7 @@ validate-x86_64-linux-deb8-hadrian:
validate-x86_64-darwin:
extends: .validate
+ stage: full-build
allow_failure: true
tags:
- x86_64-darwin
@@ -127,6 +128,7 @@ validate-x86_64-darwin:
validate-aarch64-linux-deb9:
extends: .validate-linux
+ stage: full-build
image: ghcci/aarch64-linux-deb9:0.1
allow_failure: true
artifacts:
@@ -139,6 +141,7 @@ validate-aarch64-linux-deb9:
nightly-aarch64-linux-deb9:
extends: validate-aarch64-linux-deb9
+ stage: full-build
artifacts:
expire_in: 2 year
variables:
@@ -149,6 +152,7 @@ nightly-aarch64-linux-deb9:
validate-x86_64-linux-deb9:
extends: .validate-linux
+ stage: build
image: ghcci/x86_64-linux-deb9:0.2
artifacts:
when: always
@@ -158,6 +162,7 @@ validate-x86_64-linux-deb9:
nightly-x86_64-linux-deb9:
extends: validate-x86_64-linux-deb9
+ stage: build
artifacts:
expire_in: 2 year
variables:
@@ -168,6 +173,7 @@ nightly-x86_64-linux-deb9:
validate-x86_64-linux-deb9-llvm:
extends: .validate-linux
+ stage: full-build
allow_failure: true
image: ghcci/x86_64-linux-deb9:0.2
variables:
@@ -177,6 +183,7 @@ validate-x86_64-linux-deb9-llvm:
validate-x86_64-linux-deb8:
extends: .validate-linux
+ stage: full-build
image: ghcci/x86_64-linux-deb8:0.1
cache:
key: linux-x86_64-deb8
@@ -186,6 +193,7 @@ validate-x86_64-linux-deb8:
validate-x86_64-linux-fedora27:
extends: .validate-linux
+ stage: full-build
image: ghcci/x86_64-linux-fedora27:0.1
cache:
key: linux-x86_64-fedora27
@@ -195,6 +203,7 @@ validate-x86_64-linux-fedora27:
validate-x86_64-linux-deb9-integer-simple:
extends: .validate-linux
+ stage: full-build
allow_failure: true
variables:
INTEGER_LIBRARY: integer-simple
@@ -204,6 +213,7 @@ validate-x86_64-linux-deb9-integer-simple:
nightly-x86_64-linux-deb9-integer-simple:
extends: validate-x86_64-linux-deb9-integer-simple
+ stage: full-build
artifacts:
expire_in: 2 year
variables:
@@ -214,6 +224,7 @@ nightly-x86_64-linux-deb9-integer-simple:
validate-x86_64-linux-deb9-unreg:
extends: .validate-linux
+ stage: full-build
variables:
CONFIGURE_ARGS: --enable-unregisterised
image: ghcci/x86_64-linux-deb9:0.2
@@ -225,7 +236,7 @@ validate-x86_64-linux-deb9-unreg:
############################################################
validate-x86_64-windows-hadrian:
- stage: build
+ stage: full-build
variables:
GHC_VERSION: "8.6.2"
script:
@@ -253,7 +264,7 @@ validate-x86_64-windows-hadrian:
- x86_64-windows
validate-x86_64-windows:
- stage: build
+ stage: full-build
variables:
GHC_VERSION: "8.6.2"
script:
More information about the ghc-commits
mailing list