diff options
author | Alp Mestanogullari <alp@well-typed.com> | 2018-11-07 01:21:55 +0100 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-11-30 22:38:54 -0500 |
commit | b9260e925e998f715865ae043bdb9f779ab5f849 (patch) | |
tree | df0beb50dd631189d87e711b79c4c7ba72908dc7 /.circleci/config.yml | |
parent | 6e24a0bee0d0be8da040c3d5a1e90141abd89852 (diff) | |
download | haskell-b9260e925e998f715865ae043bdb9f779ab5f849.tar.gz |
Add a Gitlab CI script that runs Circle CI validation jobs
And put it to use for running i386 and x86_64 linux validate,
x86_64 darwin validate and building with hadrian. For all the validate
jobs, we save the artifacts (bindist + test results for now) in Circle CI
and subsequently grab them in Gitlab. The nice side effect is that merge
requests now show the change in test results from the patches and let you
download or browse the artifacts.
Diffstat (limited to '.circleci/config.yml')
-rw-r--r-- | .circleci/config.yml | 40 |
1 files changed, 27 insertions, 13 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml index 8bb9306103..4b8d7a4e96 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -80,6 +80,11 @@ aliases: run: name: Push Performance Git Notes command: .circleci/push-test-metrics.sh + - &store_test_artifacts + store_artifacts: + # we might want to add the whole output of the test phase + # too at some point + path: test-results/junit.xml - &slowtest run: name: Full Test @@ -90,17 +95,13 @@ aliases: run: name: Create bindist # Reduce compression effort to 3 - command: make binary-dist TAR_COMP_OPTS="-2" + command: make binary-dist TAR_COMP_OPTS="-2" && mv ghc*.tar.xz ghc.tar.xz # Building bindist takes ~15 minutes without output, account for # that. no_output_timeout: "30m" - - &storeartifacts - run: - name: Store artifacts - command: | - curl https://ghc-artifacts.s3.amazonaws.com/tools/ghc-artifact-collector-$GHC_COLLECTOR_FLAVOR --output ghc-artifact-collector - chmod +x ghc-artifact-collector - ./ghc-artifact-collector ghc*.tar.xz + - &store_bindist + store_artifacts: + path: ghc.tar.xz - &trigger_on_tags filters: tags: @@ -124,9 +125,10 @@ jobs: - *configure_unix - *make - *bindist - - *storeartifacts + - *store_bindist - *test - *store_test_results + - *store_test_artifacts - *push_perf_note "validate-x86_64-freebsd": @@ -147,9 +149,10 @@ jobs: - *configure_bsd - *make - *bindist - - *storeartifacts + - *store_bindist - *test - *store_test_results + - *store_test_artifacts - *push_perf_note "validate-x86_64-darwin": @@ -173,9 +176,10 @@ jobs: - *configure_unix - *make - *bindist - - *storeartifacts + - *store_bindist - *test - *store_test_results + - *store_test_artifacts - *push_perf_note "validate-hadrian-x86_64-linux": @@ -211,6 +215,7 @@ jobs: - *test - *store_test_results - *push_perf_note + - *store_test_artifacts "validate-x86_64-linux-llvm": resource_class: xlarge @@ -237,6 +242,8 @@ jobs: - *configure_unix - *make - *test + - *store_test_results + - *store_test_artifacts - *push_perf_note # Nightly build with -DDEBUG using devel2 flavour @@ -259,6 +266,7 @@ jobs: - *make - *test - *store_test_results + - *store_test_artifacts - *push_perf_note "validate-i386-linux": @@ -278,9 +286,10 @@ jobs: - *configure_unix_32 - *make - *bindist - - *storeartifacts + - *store_bindist - *test - *store_test_results + - *store_test_artifacts - *push_perf_note "validate-x86_64-fedora": @@ -300,9 +309,10 @@ jobs: - *configure_unix - *make - *bindist - - *storeartifacts + - *store_bindist - *test - *store_test_results + - *store_test_artifacts - *push_perf_note "slow-validate-x86_64-linux": @@ -321,6 +331,7 @@ jobs: - *make - *slowtest - *store_test_results + - *store_test_artifacts - *push_perf_note workflows: @@ -340,6 +351,9 @@ workflows: - validate-x86_64-fedora: *trigger_on_tags + branches: + ignore: /gitlab\/.*/ + nightly: triggers: - schedule: |