Merge pull request #153 from andreasabel/ci #65
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Cabal | |
| on: | |
| push: | |
| branches: | |
| - 'master' | |
| pull_request: | |
| branches: | |
| - 'master' | |
| jobs: | |
| linux: | |
| runs-on: ubuntu-22.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| versions: | |
| - ghc: '9.10' | |
| cabal: latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install recent cabal/ghc | |
| id: setup | |
| uses: haskell-actions/setup@v2 | |
| with: | |
| ghc-version: ${{ matrix.versions.ghc }} | |
| cabal-version: ${{ matrix.versions.cabal }} | |
| - name: Cache cabal global package db | |
| id: cabal-global | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| ~/.cabal | |
| key: ${{ runner.os }}-${{ steps.setup.outputs.ghc-version }}-${{ steps.setup.outputs.cabal-version }}-cabal-global-${{ github.sha }} | |
| restore-keys: ${{ runner.os }}-${{ steps.setup.outputs.ghc-version }}-${{ steps.setup.outputs.cabal-version }}-cabal-global- | |
| - name: Cache cabal work | |
| id: cabal-local | |
| uses: actions/cache@v4 | |
| with: | |
| path: | | |
| dist-newstyle | |
| key: ${{ runner.os }}-${{ steps.setup.outputs.ghc-version }}-${{ steps.setup.outputs.cabal-version }}-cabal-local-${{ github.sha }} | |
| restore-keys: ${{ runner.os }}-${{ steps.setup.outputs.ghc-version }}-${{ steps.setup.outputs.cabal-version }}-cabal-local- | |
| - name: Install dependencies (OS) | |
| run: | | |
| sudo apt update | |
| sudo apt install libwebkit2gtk-4.0-dev libgirepository1.0-dev libgtksourceview-3.0-dev | |
| - name: Install dependencies (Haskell) | |
| run: | | |
| cabal update | |
| cabal build all --dependencies-only --enable-tests --disable-optimization | |
| - name: Build | |
| run: | | |
| cabal build all --enable-tests --disable-optimization 2>&1 | tee build.log | |
| - name: Test | |
| run: | | |
| cabal test all --disable-optimization |