-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy path.gitlab-ci.yml
84 lines (76 loc) · 2.1 KB
/
.gitlab-ci.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
image: haskell:9.4.8
variables:
STACK_ROOT: "${CI_PROJECT_DIR}/.stack"
cache: &global_cache
paths:
- .apt
- .stack
- .stack-work
- target
before_script:
- stack config set system-ghc --global true
build:
stage: build
script:
- rm -rf .stack-work/install/*/*/*/bin
- stack build --no-terminal --coverage --test --bench --no-run-tests --no-run-benchmarks
after_script:
- rm -rf ./bin
- mv .stack-work/install/*/*/*/bin ./bin
artifacts:
paths:
- "bin/"
test:
stage: test
script:
- apt-get update -yqq
- apt-get install -y --no-install-recommends graphviz dot2tex libtinfo5 texlive-latex-base poppler-utils preview-latex-style texlive-pstricks poppler-utils
- rm -rf .stack-work/install/*/*/*/hpc
- stack --no-terminal test --coverage smcdel:test:examples smcdel:test:k smcdel:test:translations
coverage: '/(\d+)% top-level declarations used/'
after_script:
- rm -rf ./hpc
- mv .stack-work/install/*/*/*/hpc ./hpc
artifacts:
when: always
paths:
- "hpc/"
cache:
<<: *global_cache
policy: pull
test-web:
stage: test
script:
- apt-get update -yqq
- apt-get install -y --no-install-recommends graphviz dot2tex libtinfo5 texlive-latex-base poppler-utils preview-latex-style texlive-pstricks wget firefox-esr openjdk-11-jre-headless
- stack --no-terminal test --flag smcdel:web smcdel:exe:smcdel-web smcdel:test:web
cache:
<<: *global_cache
policy: pull
test-CUDD:
stage: test
script:
- rm -rf .stack-work/install/*/*/*/hpc
- stack --no-terminal test --flag smcdel:with-cudd --coverage smcdel:test:CUDD
coverage: '/(\d+)% top-level declarations used/'
after_script:
- rm -rf ./hpc
- mv .stack-work/install/*/*/*/hpc ./hpc
allow_failure: true
artifacts:
when: always
paths:
- "hpc/"
cache:
<<: *global_cache
policy: pull
hlint:
image: debian:stable
before_script:
- apt-get update -yqq
- apt-get install -y curl
stage: build
script:
- curl -sL https://raw.github.com/ndmitchell/hlint/master/misc/travis.sh | sh -s .
cache:
policy: pull