8
8
#
9
9
# For more information, see https://github.com/haskell-CI/haskell-ci
10
10
#
11
- # version: 0.19.20240702
11
+ # version: 0.19.20250115
12
12
#
13
- # REGENDATA ("0.19.20240702 ",["github","--config=cabal.haskell-ci","cabal.project"])
13
+ # REGENDATA ("0.19.20250115 ",["github","--config=cabal.haskell-ci","cabal.project"])
14
14
#
15
15
name : Haskell-CI
16
16
on :
@@ -32,14 +32,19 @@ jobs:
32
32
strategy :
33
33
matrix :
34
34
include :
35
- - compiler : ghc-9.6.2
35
+ - compiler : ghc-9.8.4
36
36
compilerKind : ghc
37
- compilerVersion : 9.6.2
37
+ compilerVersion : 9.8.4
38
38
setup-method : ghcup
39
39
allow-failure : false
40
- - compiler : ghc-9.4.5
40
+ - compiler : ghc-9.6.6
41
41
compilerKind : ghc
42
- compilerVersion : 9.4.5
42
+ compilerVersion : 9.6.6
43
+ setup-method : ghcup
44
+ allow-failure : false
45
+ - compiler : ghc-9.4.8
46
+ compilerKind : ghc
47
+ compilerVersion : 9.4.8
43
48
setup-method : ghcup
44
49
allow-failure : false
45
50
- compiler : ghc-9.2.7
@@ -64,15 +69,29 @@ jobs:
64
69
allow-failure : false
65
70
fail-fast : false
66
71
steps :
67
- - name : apt
72
+ - name : apt-get install
68
73
run : |
69
74
apt-get update
70
75
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
76
+ - name : Install GHCup
77
+ run : |
71
78
mkdir -p "$HOME/.ghcup/bin"
72
- curl -sL https://downloads.haskell.org/ghcup/0.1.20 .0/x86_64-linux-ghcup-0.1.20 .0 > "$HOME/.ghcup/bin/ghcup"
79
+ curl -sL https://downloads.haskell.org/ghcup/0.1.30 .0/x86_64-linux-ghcup-0.1.30 .0 > "$HOME/.ghcup/bin/ghcup"
73
80
chmod a+x "$HOME/.ghcup/bin/ghcup"
74
- "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
81
+ - name : Install cabal-install
82
+ run : |
75
83
"$HOME/.ghcup/bin/ghcup" install cabal 3.12.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
84
+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.12.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
85
+ - name : Install GHC (GHCup)
86
+ if : matrix.setup-method == 'ghcup'
87
+ run : |
88
+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
89
+ HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
90
+ HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
91
+ HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
92
+ echo "HC=$HC" >> "$GITHUB_ENV"
93
+ echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
94
+ echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
76
95
env :
77
96
HCKIND : ${{ matrix.compilerKind }}
78
97
HCNAME : ${{ matrix.compiler }}
@@ -83,21 +102,12 @@ jobs:
83
102
echo "LANG=C.UTF-8" >> "$GITHUB_ENV"
84
103
echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
85
104
echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
86
- HCDIR=/opt/$HCKIND/$HCVER
87
- HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
88
- HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
89
- HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
90
- echo "HC=$HC" >> "$GITHUB_ENV"
91
- echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
92
- echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
93
- echo "CABAL=$HOME/.ghcup/bin/cabal-3.12.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
94
105
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
95
106
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
96
107
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
97
108
echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV"
98
109
echo "HEADHACKAGE=false" >> "$GITHUB_ENV"
99
110
echo "ARG_COMPILER=--$HCKIND --with-compiler=$HC" >> "$GITHUB_ENV"
100
- echo "GHCJSARITH=0" >> "$GITHUB_ENV"
101
111
env :
102
112
HCKIND : ${{ matrix.compilerKind }}
103
113
HCNAME : ${{ matrix.compiler }}
@@ -275,8 +285,8 @@ jobs:
275
285
if [ $((HCNUMVER < 81000)) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --constraint='servant ==0.16.*' --dependencies-only -j2 all ; fi
276
286
if [ $((HCNUMVER < 81000)) -ne 0 ] ; then $CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --constraint='servant ==0.16.*' all ; fi
277
287
- name : save cache
278
- uses : actions/cache/save@v4
279
288
if : always()
289
+ uses : actions/cache/save@v4
280
290
with :
281
291
key : ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
282
292
path : ~/.cabal/store
0 commit comments