@@ -4,10 +4,6 @@ defaults: &defaults
44 - image : alanz/haskell-hie-ci
55 steps :
66 - checkout
7- - run :
8- command : git submodule sync --recursive
9- - run :
10- command : git submodule update --recursive --init
117 - run :
128 name : Write provided stack.yaml with predictable name
139 command : cp ${STACK_FILE} stack-build.txt
@@ -56,13 +52,6 @@ defaults: &defaults
5652 - ~/build/.stack-work
5753 - ~/build/ghcide/.stack-work
5854
59- - run :
60- name : Test ghcide
61- # Tests MUST run with -j1, since multiple ghc-mod sessions are not allowed
62- # command: stack -j 1 --stack-yaml=${STACK_FILE} test ghcide --dump-logs
63- command : echo "ghcide tests disabled until they got fixed, see https://github.com/mpickering/ghcide/issues/25"
64- no_output_timeout : 120m
65-
6655 - run :
6756 name : Setup stack eval hie.html
6857 command : cp plugins/hls-eval-plugin/test/testdata/hie-stack.yaml plugins/hls-eval-plugin/test/testdata/hie.yaml
@@ -72,30 +61,10 @@ defaults: &defaults
7261 command : grep '^resolver:\|^compiler:' stack-build.txt > plugins/hls-eval-plugin/test/testdata/stack.yaml
7362
7463 - run :
75- name : Test haskell-language-server func-test suite
76- # Tasty by default will run all the tests in parallel. Which should
77- # work ok, but given that these CircleCI runners aren't the beefiest
78- # machine can cause some flakiness. So pass -j1 to Tasty (NOT Stack) to
79- # tell it to go slow and steady.
80- command : stack --stack-yaml=${STACK_FILE} test haskell-language-server:func-test --dump-logs --test-arguments="-j1 --rerun-update" || stack --stack-yaml=${STACK_FILE} test haskell-language-server:func-test --dump-logs --test-arguments="-j1 --rerun" || LSP_TEST_LOG_COLOR=0 LSP_TEST_LOG_MESSAGES=true LSP_TEST_LOG_STDERR=true stack --stack-yaml=${STACK_FILE} test haskell-language-server:func-test --dump-logs --test-arguments="-j1 --rerun"
64+ name : Build including tests
65+ command : stack --stack-yaml=${STACK_FILE} test --no-run-tests
8166 no_output_timeout : 120m
8267
83- - run :
84- name : Test haskell-language-server wrapper-test suite
85- command : stack --stack-yaml=${STACK_FILE} test haskell-language-server:wrapper-test --dump-logs --test-arguments="-j1" || stack --stack-yaml=${STACK_FILE} test haskell-language-server:wrapper-test --dump-logs --test-arguments="-j1"
86- no_output_timeout : 30m
87-
88- - run :
89- name : Test hls-tactics-plugin
90- command : stack --stack-yaml=${STACK_FILE} test hls-tactics-plugin:test:tests --dump-logs --test-arguments="-j1"
91- no_output_timeout : 30m
92-
93- - store_test_results :
94- path : test-results
95-
96- - store_artifacts :
97- path : test-logs
98-
9968 - save_cache :
10069 key : stack-cache-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}-{{ checksum "stack-build.txt" }}-{{ checksum "all-cabal.txt" }}
10170 paths : *cache_paths
@@ -147,45 +116,6 @@ jobs:
147116 - STACK_FILE : " stack.yaml"
148117 << : *defaults
149118
150- cabal :
151- working_directory : ~/build
152- docker :
153- # We have to wait to a docker image with ghc-8.10.3
154- # See https://github.com/haskell/docker-haskell/issues/31
155- - image : haskell:8.10.2
156- steps :
157- - checkout
158- - run :
159- name : Sync submodules
160- command : git submodule sync --recursive
161- - run :
162- name : Update submodules
163- command : git submodule update --recursive --init
164- - restore-cache :
165- keys :
166- - cabal-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}
167- - run :
168- name : Update
169- command : cabal new-update
170- - run :
171- name : Configure
172- command : cabal new-configure --enable-tests
173- - run :
174- name : Build dependencies
175- command : cabal new-build -j1 --dependencies-only # need j1, else ghc-lib-parser triggers OOM
176- no_output_timeout : 30m
177- - save_cache :
178- key : cabal-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}
179- paths :
180- - ~/.cabal
181- - run :
182- name : Build
183- command : cabal new-build -j1 # need j1, else ghc-lib-parser triggers OOM
184- no_output_timeout : 30m
185- - save_cache :
186- key : cabal-{{ .Environment.HIE_CACHE }}-{{ arch }}-{{ .Environment.CIRCLE_JOB }}
187- paths :
188- - ~/.cabal
189119
190120workflows :
191121 version : 2
@@ -200,4 +130,3 @@ workflows:
200130 - ghc-8.10.2
201131 - ghc-8.10.3
202132 - ghc-default
203- - cabal
0 commit comments