@@ -8,9 +8,9 @@
9# For more information, see https://github.com/haskell-CI/haskell-ci
9# For more information, see https://github.com/haskell-CI/haskell-ci
11−# version: 0.13.20210827
11+# version: 0.13.20211111
13−# REGENDATA ("0.13.20210827",["github","cabal.project"])
13+# REGENDATA ("0.13.20211111",["github","cabal.project"])
15name: Haskell-CI
15name: Haskell-CI
@@ -24,21 +24,28 @@ jobs:
25 name: Haskell-CI - Linux - ${{ matrix.compiler }}
25 name: Haskell-CI - Linux - ${{ matrix.compiler }}
26 runs-on: ubuntu-18.04
26 runs-on: ubuntu-18.04
27 container:
29 container:
28 image: buildpack-deps:bionic
30 image: buildpack-deps:bionic
29 continue-on-error: ${{ matrix.allow-failure }}
31 continue-on-error: ${{ matrix.allow-failure }}
35+ - compiler: ghc-9.2.1
37+ compilerVersion: 9.2.1
33 - compiler: ghc-9.0.1
40 - compiler: ghc-9.0.1
34 compilerKind: ghc
41 compilerKind: ghc
35 compilerVersion: 9.0.1
42 compilerVersion: 9.0.1
36 setup-method: hvr-ppa
43 setup-method: hvr-ppa
37 allow-failure: false
44 allow-failure: false
38− - compiler: ghc-8.10.4
45+ - compiler: ghc-8.10.7
39 compilerKind: ghc
46 compilerKind: ghc
40− compilerVersion: 8.10.4
47+ compilerVersion: 8.10.7
41− setup-method: hvr-ppa
48+ setup-method: ghcup
42 allow-failure: false
49 allow-failure: false
43 - compiler: ghc-8.8.4
50 - compiler: ghc-8.8.4
44 compilerKind: ghc
51 compilerKind: ghc
@@ -81,9 +88,21 @@ jobs:
82 apt-get update
89 apt-get update
83 apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
90 apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
91+ if [ "${{ matrix.setup-method }}" = ghcup ]; then
92+ mkdir -p "$HOME/.ghcup/bin"
93+ curl -sL https://downloads.haskell.org/ghcup/0.1.17.3/x86_64-linux-ghcup-0.1.17.3 > "$HOME/.ghcup/bin/ghcup"
94+ chmod a+x "$HOME/.ghcup/bin/ghcup"
95+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER"
96+ "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0
84− apt-add-repository -y 'ppa:hvr/ghc'
98+ apt-add-repository -y 'ppa:hvr/ghc'
85− apt-get update
99+ apt-get update
86− apt-get install -y "$HCNAME" cabal-install-3.4
100+ apt-get install -y "$HCNAME"
101+ mkdir -p "$HOME/.ghcup/bin"
102+ curl -sL https://downloads.haskell.org/ghcup/0.1.17.3/x86_64-linux-ghcup-0.1.17.3 > "$HOME/.ghcup/bin/ghcup"
103+ chmod a+x "$HOME/.ghcup/bin/ghcup"
104+ "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0
88 HCKIND: ${{ matrix.compilerKind }}
107 HCKIND: ${{ matrix.compilerKind }}
89 HCNAME: ${{ matrix.compiler }}
108 HCNAME: ${{ matrix.compiler }}
@@ -95,11 +114,20 @@ jobs:
95 echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
114 echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
96 echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
115 echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
97 HCDIR=/opt/$HCKIND/$HCVER
116 HCDIR=/opt/$HCKIND/$HCVER
117+ if [ "${{ matrix.setup-method }}" = ghcup ]; then
118+ HC=$HOME/.ghcup/bin/$HCKIND-$HCVER
119+ echo "HC=$HC" >> "$GITHUB_ENV"
120+ echo "HCPKG=$HOME/.ghcup/bin/$HCKIND-pkg-$HCVER" >> "$GITHUB_ENV"
121+ echo "HADDOCK=$HOME/.ghcup/bin/haddock-$HCVER" >> "$GITHUB_ENV"
122+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.6.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
98− HC=$HCDIR/bin/$HCKIND
124+ HC=$HCDIR/bin/$HCKIND
99− echo "HC=$HC" >> "$GITHUB_ENV"
125+ echo "HC=$HC" >> "$GITHUB_ENV"
100− echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
126+ echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
101− echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
127+ echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
102− echo "CABAL=/opt/cabal/3.4/bin/cabal -vnormal+nowrap" >> "$GITHUB_ENV"
128+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.6.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
103 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
131 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
104 echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
132 echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
105 echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
133 echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -133,6 +161,10 @@ jobs:
133 repository hackage.haskell.org
161 repository hackage.haskell.org
134 url: http://hackage.haskell.org/
162 url: http://hackage.haskell.org/
164+ cat >> $CABAL_CONFIG <<EOF
165+ program-default-options
166+ ghc-options: $GHCJOBS +RTS -M3G -RTS
136 cat $CABAL_CONFIG
168 cat $CABAL_CONFIG
137 - name: versions
169 - name: versions