Skip to content

ci: Update various github action versions (#15) #19

ci: Update various github action versions (#15)

ci: Update various github action versions (#15) #19

Workflow file for this run

name: Run CI
on:
push:
branches: [ main ]
paths-ignore:
- '**.md' # Do not need to run CI for markdown changes.
pull_request:
branches: [ main ]
paths-ignore:
- '**.md'
jobs:
build-linux:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
resolver: ["lts-16.31", "lts-18.28", "lts-19.33", "lts-20.11"]
services:
redis:
image: redis
ports:
- 6379:6379
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # If you only need the current version keep this.
- uses: ./.github/actions/setup-cache
- uses: ./.github/actions/ci
with:
resolver: ${{ matrix.resolver }}
build-macosx:
runs-on: macos-latest
strategy:
fail-fast: false
matrix:
include:
- resolver: lts-18.28
use-llvm: 'true'
- resolver: lts-19.33
use-llvm: 'true'
- resolver: lts-20.11
use-llvm: 'false'
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # If you only need the current version keep this.
- name: Setup C_INCLUDE_PATH
run: |
brew install pcre
echo "C_INCLUDE_PATH=$(find /opt/homebrew/Cellar/pcre -name 'pcre.h' -exec dirname {} \;):$(xcrun --show-sdk-path)/usr/include/ffi" >> $GITHUB_ENV
- name: Add LLVM to path
if: ${{ matrix.use-llvm == 'true' }}
run: |
brew install llvm@14
echo "PATH=/opt/homebrew/opt/llvm@14/bin:$PATH" >> $GITHUB_ENV
- uses: ./.github/actions/setup-cache
- uses: ./.github/actions/ci
with:
resolver: ${{ matrix.resolver }}
run_tests: false # We don't have redis running here so the tests will fail
quality-checks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0 # If you only need the current version keep this.
- uses: ./.github/actions/setup-cache
with:
ghc-version: '9.4.7'
- uses: haskell-actions/setup@v2
with:
ghc-version: '9.4.7'
- name: 'Set up HLint'
uses: haskell-actions/hlint-setup@v2
with:
version: 3.5
- name: 'Run HLint'
uses: haskell-actions/hlint-run@v2
with:
fail-on: warning
- uses: haskell-actions/run-fourmolu@v10
with:
version: "0.10.1.0"
pattern: |
src
test
- name: Install hpack
run: cabal install --global hpack-0.35.1
- name: Verify the generated .cabal file is up-to-date
run: |
hpack
if [ $(git status --porcelain | wc -l) -gt 0 ]; then
echo "hpack resulted in modified files. please run hpack locally and commit those changes"
echo ""
echo "showing the results of `git status`"
git status
exit -1
fi