88#
99# For more information, see https://github.com/haskell-CI/haskell-ci
1010#
11- # version: 0.13.20210606
11+ # version: 0.14
1212#
13- # REGENDATA ("0.13.20210606 ",["github","regex-posix.cabal"])
13+ # REGENDATA ("0.14 ",["github","regex-posix.cabal"])
1414#
1515name : Haskell-CI
1616on :
@@ -20,21 +20,28 @@ jobs:
2020 linux :
2121 name : Haskell-CI - Linux - ${{ matrix.compiler }}
2222 runs-on : ubuntu-18.04
23+ timeout-minutes :
24+ 60
2325 container :
2426 image : buildpack-deps:bionic
2527 continue-on-error : ${{ matrix.allow-failure }}
2628 strategy :
2729 matrix :
2830 include :
29- - compiler : ghc-9.0 .1
31+ - compiler : ghc-9.2 .1
3032 compilerKind : ghc
31- compilerVersion : 9.0 .1
32- setup-method : hvr-ppa
33+ compilerVersion : 9.2 .1
34+ setup-method : ghcup
3335 allow-failure : false
34- - compiler : ghc-8.10.4
36+ - compiler : ghc-9.0.2
3537 compilerKind : ghc
36- compilerVersion : 8.10.4
37- setup-method : hvr-ppa
38+ compilerVersion : 9.0.2
39+ setup-method : ghcup
40+ allow-failure : false
41+ - compiler : ghc-8.10.7
42+ compilerKind : ghc
43+ compilerVersion : 8.10.7
44+ setup-method : ghcup
3845 allow-failure : false
3946 - compiler : ghc-8.8.4
4047 compilerKind : ghc
@@ -97,9 +104,21 @@ jobs:
97104 run : |
98105 apt-get update
99106 apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
100- apt-add-repository -y 'ppa:hvr/ghc'
101- apt-get update
102- apt-get install -y "$HCNAME" cabal-install-3.4
107+ if [ "${{ matrix.setup-method }}" = ghcup ]; then
108+ mkdir -p "$HOME/.ghcup/bin"
109+ curl -sL https://downloads.haskell.org/ghcup/0.1.17.3/x86_64-linux-ghcup-0.1.17.3 > "$HOME/.ghcup/bin/ghcup"
110+ chmod a+x "$HOME/.ghcup/bin/ghcup"
111+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER"
112+ "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0
113+ else
114+ apt-add-repository -y 'ppa:hvr/ghc'
115+ apt-get update
116+ apt-get install -y "$HCNAME"
117+ mkdir -p "$HOME/.ghcup/bin"
118+ curl -sL https://downloads.haskell.org/ghcup/0.1.17.3/x86_64-linux-ghcup-0.1.17.3 > "$HOME/.ghcup/bin/ghcup"
119+ chmod a+x "$HOME/.ghcup/bin/ghcup"
120+ "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0
121+ fi
103122 env :
104123 HCKIND : ${{ matrix.compilerKind }}
105124 HCNAME : ${{ matrix.compiler }}
@@ -111,11 +130,20 @@ jobs:
111130 echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
112131 echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
113132 HCDIR=/opt/$HCKIND/$HCVER
114- HC=$HCDIR/bin/$HCKIND
115- echo "HC=$HC" >> "$GITHUB_ENV"
116- echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
117- echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
118- echo "CABAL=/opt/cabal/3.4/bin/cabal -vnormal+nowrap" >> "$GITHUB_ENV"
133+ if [ "${{ matrix.setup-method }}" = ghcup ]; then
134+ HC=$HOME/.ghcup/bin/$HCKIND-$HCVER
135+ echo "HC=$HC" >> "$GITHUB_ENV"
136+ echo "HCPKG=$HOME/.ghcup/bin/$HCKIND-pkg-$HCVER" >> "$GITHUB_ENV"
137+ echo "HADDOCK=$HOME/.ghcup/bin/haddock-$HCVER" >> "$GITHUB_ENV"
138+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.6.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
139+ else
140+ HC=$HCDIR/bin/$HCKIND
141+ echo "HC=$HC" >> "$GITHUB_ENV"
142+ echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
143+ echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
144+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.6.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
145+ fi
146+
119147 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
120148 echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
121149 echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -149,6 +177,10 @@ jobs:
149177 repository hackage.haskell.org
150178 url: http://hackage.haskell.org/
151179 EOF
180+ cat >> $CABAL_CONFIG <<EOF
181+ program-default-options
182+ ghc-options: $GHCJOBS +RTS -M3G -RTS
183+ EOF
152184 cat $CABAL_CONFIG
153185 - name : versions
154186 run : |
0 commit comments