@@ -8,9 +8,9 @@
88#
99# For more information, see https://github.com/haskell-CI/haskell-ci
1010#
11−# version: 0.13.20211030
11+# version: 0.15.20220808
1212#
13−# REGENDATA ("0.13.20211030",["github","--project","cabal.bench.project","-o",".github/workflows/haskell-ci-bench.yml","--github-action-name","Benchmarks"])
13+# REGENDATA ("0.15.20220808",["github","--project","cabal.bench.project","-o",".github/workflows/haskell-ci-bench.yml","--github-action-name","Benchmarks"])
1414#
1515name: Benchmarks
1616on:
@@ -23,17 +23,19 @@ on:
2323jobs:
2424 linux:
2525 name: Benchmarks - Linux - ${{ matrix.compiler }}
26− runs-on: ubuntu-18.04
26+ runs-on: ubuntu-20.04
27+ timeout-minutes:
28+ 60
2729 container:
2830 image: buildpack-deps:bionic
2931 continue-on-error: ${{ matrix.allow-failure }}
3032 strategy:
3133 matrix:
3234 include:
33− - compiler: ghc-8.10.3
35+ - compiler: ghc-8.10.7
3436 compilerKind: ghc
35− compilerVersion: 8.10.3
36− setup-method: hvr-ppa
37+ compilerVersion: 8.10.7
38+ setup-method: ghcup
3739 allow-failure: false
3840 - compiler: ghc-8.8.4
3941 compilerKind: ghc
@@ -66,13 +68,21 @@ jobs:
6668 run: |
6769 apt-get update
6870 apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common libtinfo5
69− apt-add-repository -y 'ppa:hvr/ghc'
70− apt-get update
71− apt-get install -y "$HCNAME"
72− mkdir -p "$HOME/.ghcup/bin"
73− curl -sL https://downloads.haskell.org/ghcup/0.1.17.3/x86_64-linux-ghcup-0.1.17.3 > "$HOME/.ghcup/bin/ghcup"
74− chmod a+x "$HOME/.ghcup/bin/ghcup"
75− "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0
71+ if [ "${{ matrix.setup-method }}" = ghcup ]; then
72+ mkdir -p "$HOME/.ghcup/bin"
73+ curl -sL https://downloads.haskell.org/ghcup/0.1.18.0/x86_64-linux-ghcup-0.1.18.0 > "$HOME/.ghcup/bin/ghcup"
74+ chmod a+x "$HOME/.ghcup/bin/ghcup"
75+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
76+ "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
77+ else
78+ apt-add-repository -y 'ppa:hvr/ghc'
79+ apt-get update
80+ apt-get install -y "$HCNAME"
81+ mkdir -p "$HOME/.ghcup/bin"
82+ curl -sL https://downloads.haskell.org/ghcup/0.1.18.0/x86_64-linux-ghcup-0.1.18.0 > "$HOME/.ghcup/bin/ghcup"
83+ chmod a+x "$HOME/.ghcup/bin/ghcup"
84+ "$HOME/.ghcup/bin/ghcup" install cabal 3.6.2.0 || (cat "$HOME"/.ghcup/logs/*.* && false)
85+ fi
7686 env:
7787 HCKIND: ${{ matrix.compilerKind }}
7888 HCNAME: ${{ matrix.compiler }}
@@ -84,11 +94,20 @@ jobs:
8494 echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
8595 echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
8696 HCDIR=/opt/$HCKIND/$HCVER
87− HC=$HCDIR/bin/$HCKIND
88− echo "HC=$HC" >> "$GITHUB_ENV"
89− echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
90− echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
91− echo "CABAL=$HOME/.ghcup/bin/cabal-3.6.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
97+ if [ "${{ matrix.setup-method }}" = ghcup ]; then
98+ HC=$HOME/.ghcup/bin/$HCKIND-$HCVER
99+ echo "HC=$HC" >> "$GITHUB_ENV"
100+ echo "HCPKG=$HOME/.ghcup/bin/$HCKIND-pkg-$HCVER" >> "$GITHUB_ENV"
101+ echo "HADDOCK=$HOME/.ghcup/bin/haddock-$HCVER" >> "$GITHUB_ENV"
102+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.6.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
103+ else
104+ HC=$HCDIR/bin/$HCKIND
105+ echo "HC=$HC" >> "$GITHUB_ENV"
106+ echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
107+ echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
108+ echo "CABAL=$HOME/.ghcup/bin/cabal-3.6.2.0 -vnormal+nowrap" >> "$GITHUB_ENV"
109+ fi
110+
92111 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
93112 echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
94113 echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -122,6 +141,10 @@ jobs:
122141 repository hackage.haskell.org
123142 url: http://hackage.haskell.org/
124143 EOF
144+ cat >> $CABAL_CONFIG <<EOF
145+ program-default-options
146+ ghc-options: $GHCJOBS +RTS -M3G -RTS
147+ EOF
125148 cat $CABAL_CONFIG
126149 - name: versions
127150 run: |
@@ -198,7 +221,7 @@ jobs:
198221 ${CABAL} -vnormal check
199222 - name: haddock
200223 run: |
201− $CABAL v2-haddock $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all
224+ $CABAL v2-haddock --haddock-all $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all
202225 - name: unconstrained build
203226 run: |
204227 rm -f cabal.project.local