6
6
#
7
7
# haskell-ci regenerate
8
8
#
9
- # For more information, see https://github.com/andreasabel /haskell-ci
9
+ # For more information, see https://github.com/haskell-CI /haskell-ci
10
10
#
11
- # version: 0.19.20240630
11
+ # version: 0.19.20250330
12
12
#
13
- # REGENDATA ("0.19.20240630 ",["github","hackage-server.cabal"])
13
+ # REGENDATA ("0.19.20250330 ",["github","hackage-server.cabal"])
14
14
#
15
15
name : Haskell-CI
16
16
on :
23
23
jobs :
24
24
linux :
25
25
name : Haskell-CI - Linux - ${{ matrix.compiler }}
26
- runs-on : ubuntu-20 .04
26
+ runs-on : ubuntu-24 .04
27
27
timeout-minutes :
28
28
60
29
29
container :
@@ -74,17 +74,30 @@ jobs:
74
74
allow-failure : false
75
75
fail-fast : false
76
76
steps :
77
- - name : apt
77
+ - name : apt-get install
78
78
run : |
79
79
apt-get update
80
80
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
81
+ apt-get install -y libbrotli-dev libgd-dev
82
+ - name : Install GHCup
83
+ run : |
81
84
mkdir -p "$HOME/.ghcup/bin"
82
- curl -sL https://downloads.haskell.org/ghcup/0.1.20.0 /x86_64-linux-ghcup-0.1.20.0 > "$HOME/.ghcup/bin/ghcup"
85
+ curl -sL https://downloads.haskell.org/ghcup/0.1.50.1 /x86_64-linux-ghcup-0.1.50.1 > "$HOME/.ghcup/bin/ghcup"
83
86
chmod a+x "$HOME/.ghcup/bin/ghcup"
87
+ - name : Install cabal-install
88
+ run : |
89
+ "$HOME/.ghcup/bin/ghcup" install cabal 3.14.1.1-p1 || (cat "$HOME"/.ghcup/logs/*.* && false)
90
+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.14.1.1-p1 -vnormal+nowrap" >> "$GITHUB_ENV"
91
+ - name : Install GHC (GHCup)
92
+ if : matrix.setup-method == 'ghcup'
93
+ run : |
84
94
"$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
85
- "$HOME/.ghcup/bin/ghcup" install cabal 3.12.1.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
86
- apt-get update
87
- apt-get install -y libbrotli-dev libgd-dev
95
+ HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
96
+ HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
97
+ HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
98
+ echo "HC=$HC" >> "$GITHUB_ENV"
99
+ echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
100
+ echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
88
101
env :
89
102
HCKIND : ${{ matrix.compilerKind }}
90
103
HCNAME : ${{ matrix.compiler }}
@@ -95,21 +108,12 @@ jobs:
95
108
echo "LANG=C.UTF-8" >> "$GITHUB_ENV"
96
109
echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
97
110
echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
98
- HCDIR=/opt/$HCKIND/$HCVER
99
- HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
100
- HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
101
- HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
102
- echo "HC=$HC" >> "$GITHUB_ENV"
103
- echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
104
- echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
105
- echo "CABAL=$HOME/.ghcup/bin/cabal-3.12.1.0 -vnormal+nowrap" >> "$GITHUB_ENV"
106
111
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
107
112
echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
108
113
echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
109
114
echo "ARG_BENCH=--enable-benchmarks" >> "$GITHUB_ENV"
110
115
echo "HEADHACKAGE=false" >> "$GITHUB_ENV"
111
116
echo "ARG_COMPILER=--$HCKIND --with-compiler=$HC" >> "$GITHUB_ENV"
112
- echo "GHCJSARITH=0" >> "$GITHUB_ENV"
113
117
env :
114
118
HCKIND : ${{ matrix.compilerKind }}
115
119
HCNAME : ${{ matrix.compiler }}
@@ -225,8 +229,8 @@ jobs:
225
229
rm -f cabal.project.local
226
230
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
227
231
- name : save cache
228
- uses : actions/cache/save@v4
229
232
if : always()
233
+ uses : actions/cache/save@v4
230
234
with :
231
235
key : ${{ runner.os }}-${{ matrix.compiler }}-${{ github.sha }}
232
236
path : ~/.cabal/store
0 commit comments