on develop help sign in
47 lines 1.5 kB history raw
1name: github-action
3on: [push, pull_request]
5jobs:
6 build:
7 strategy:
8 matrix:
9 ghc: ['8.4.4', '8.6.5', '8.8.4', '8.10.2']
10 os: ['ubuntu-latest', 'macos-latest']
11 exclude:
12 # There are some linker warnings in 802 on darwin that
13 # cause compilation to fail
14 # See https://github.com/NixOS/nixpkgs/issues/25139
15 - ghc: '8.0.2'
16 os: 'macos-latest'
17 runs-on: ${{ matrix.os }}
19 name: GHC ${{ matrix.ghc }} on ${{ matrix.os }}
20 steps:
21 - uses: actions/checkout@v2
22 - uses: actions/setup-haskell@v1
23 with:
24 ghc-version: ${{ matrix.ghc }}
25 - name: Cache
26 uses: actions/cache@v1
27 env:
28 cache-name: cache-cabal
29 with:
30 path: ~/.cabal
31 key: ${{ runner.os }}-${{ matrix.ghc }}-build-${{ env.cache-name }}-${{ hashFiles('**/*.cabal') }}-${{ hashFiles('**/cabal.project') }}
32 restore-keys: |
33 ${{ runner.os }}-${{ matrix.ghc }}-build-${{ env.cache-name }}-
34 ${{ runner.os }}-${{ matrix.ghc }}-build-
35 ${{ runner.os }}-${{ matrix.ghc }}-
36 ${{ runner.os }}
38 - name: Set up cabal project file to avoid webkit2gtk
39 run: cp cabal.project-nogtk cabal.project
40 - name: Install dependencies
41 run: |
42 cabal update
43 cabal build --only-dependencies --enable-tests --enable-benchmarks all
44 - name: Build
45 run: cabal build --enable-tests --enable-benchmarks all
46 - name: Run tests
47 run: cabal test all