-
Notifications
You must be signed in to change notification settings - Fork 6
/
cabal.haskell-ci
194 lines (128 loc) · 4.05 KB
/
cabal.haskell-ci
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
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
-- cabal-install version for all jobs
cabal-install-version: 3.10
-- jobs (N:M - cabal:ghc)
jobs:
-- distribution version (xenial, bionic, focal, jammy)
distribution: bionic
-- Jobs selection across packages
jobs-selection: uniform
-- Restrict jobs selection futher from per package tested-with
enabled: True
-- Copy ? fields from cabal.project fields
copy-fields: some
-- --ghc-options for local packages
local-ghc-options:
-- Clone submodules, i.e. recursively
submodules: False
-- Disable caching
cache: True
-- Skip separate dependency installation step
install-dependencies: True
-- Specify 'constraint: ... installed' packages
installed:
-- Build tests with
tests: True
-- Run tests with (note: only built tests are run)
run-tests: True
-- Build benchmarks
benchmarks: True
-- Haddock step
haddock: True
-- Haddock components
haddock-components: all
-- Build without tests and benchmarks
no-tests-no-benchmarks: True
-- Make unconstrained build
unconstrained: True
-- Use head.hackage repository. Also marks as allow-failures
head-hackage: >=9.9
-- Use :override for head.hackage repository
head-hackage-override: True
-- Run tests with GHCJS (experimental, relies on cabal-plan finding test-suites)
ghcjs-tests: False
ghcjs-tools:
-- Use --test-show-details=direct, may cause problems with build-type: Custom
test-output-direct: True
-- Disable cabal check run
cabal-check: False
-- Enable builds only for specific branches
branches:
-- Enable IRC notifications to given channel (e.g. 'irc.libera.chat#haskell-lens')
irc-channels:
-- Nickname with which to authenticate to an IRC server. Only used if `irc-channels` are set.
irc-nickname:
-- Password with which to authenticate to an IRC server. Only used if `irc-channels` are set.
irc-password:
-- Only send IRC notifications if run from the original remote (GitHub Actions only)
irc-if-in-origin-repo: False
-- Disable email notifications
email-notifications: True
-- Project name (used for IRC notifications), defaults to package name or name of first package listed in cabal.project file
project-name:
-- Build steps to fold
folds:
-- Add ghc-head job
ghc-head: False
-- Add postgresql service
postgresql: False
-- Add google-chrome service
google-chrome: False
-- Environment variables per job (e.g. `8.0.2:HADDOCK=false`)
env:
-- Allow failures of particular GHC version
allow-failures: False
-- [Discouraged] Assume there are only GHCs last in major series: 8.2.* will match only 8.2.2
last-in-series: False
-- Jobs to build on Linux
linux-jobs: True
-- Jobs to additionally build with OSX
macos-jobs: False
-- Use (or don't) ghcup to install cabal
ghcup-cabal: True
-- (Linux) jobs to use ghcup to install tools
ghcup-jobs: >8.10.4 && <9 || >9.0.1
-- ghcup version
ghcup-version: 0.1.22.0
-- Additional apt packages to install
apt:
travis-patches:
github-patches:
-- Don't insert the haskell-ci version into the generated Travis YAML file
insert-version: True
-- Insert -Werror=missing-methods for package scope (none, local, all)
error-missing-methods: local
-- Enable Doctest job
doctest: False
-- Additional Doctest options
doctest-options:
-- Doctest version
doctest-version: ^>=0.21.0
-- Filter packages from .ghc.environment file
doctest-filter-packages:
-- Skip doctests for these packages
doctest-skip:
-- Enable Docspec job
docspec: False
-- Additional Docspec options
docspec-options:
-- URL to download cabal-docspec
docspec-url: https://github.com/phadej/cabal-extras/releases/download/cabal-docspec-0.0.0.20230517/cabal-docspec-0.0.0.20230517-x86_64-linux.xz
-- SHA256 of cabal-docspec
docspec-hash: 3b31bbe463ad4d671abbc103db49628562ec48a6604cab278207b5b6acd21ed7
-- Enable HLint job
hlint: False
-- Specify HLint job
hlint-job: latest
hlint-yaml:
-- Additional HLint options
hlint-options:
-- HLint version
hlint-version: >=3.5 && <3.6
-- Download HLint binary release
hlint-download-binary: True
-- Raw travis commands which will be run at the very end of the script
raw-travis:
-- The name of GitHub Action
github-action-name:
-- The maximum number of minutes to let a job run
timeout-minutes: 60