forked from OSS/graphql
57 lines
1.6 KiB
YAML
57 lines
1.6 KiB
YAML
name: Build
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
branches: [master]
|
|
|
|
jobs:
|
|
audit:
|
|
runs-on: haskell
|
|
steps:
|
|
- name: Set up environment
|
|
run: |
|
|
apt-get update -y
|
|
apt-get upgrade -y
|
|
apt-get install -y nodejs pkg-config liblzma-dev
|
|
- uses: actions/checkout@v4
|
|
- name: Install dependencies
|
|
run: |
|
|
cabal update
|
|
cabal install hlint "--constraint=hlint ==3.8"
|
|
- run: cabal exec hlint -- src tests
|
|
|
|
test:
|
|
runs-on: haskell
|
|
steps:
|
|
- name: Set up environment
|
|
run: |
|
|
apt-get update -y
|
|
apt-get upgrade -y
|
|
apt-get install -y nodejs pkg-config liblzma-dev
|
|
- uses: actions/checkout@v4
|
|
- name: Install dependencies
|
|
run: |
|
|
cabal update
|
|
cabal build graphql-test
|
|
- run: cabal test --test-show-details=streaming
|
|
|
|
doc:
|
|
runs-on: alpine
|
|
steps:
|
|
- name: Set up environment
|
|
shell: ash {0}
|
|
run: |
|
|
apk add --no-cache git bash curl build-base readline-dev openssl-dev zlib-dev libpq-dev gmp-dev
|
|
- name: Prepare system
|
|
run: |
|
|
curl --create-dirs --output-dir \
|
|
~/.ghcup/bin https://downloads.haskell.org/~ghcup/0.1.19.5/x86_64-linux-ghcup-0.1.19.5 -o ghcup
|
|
chmod +x ~/.ghcup/bin/ghcup
|
|
~/.ghcup/bin/ghcup install ghc 9.4.8
|
|
~/.ghcup/bin/ghcup install cabal 3.6.2.0
|
|
- uses: actions/checkout@v4
|
|
- name: Install dependencies
|
|
run: ~/.ghcup/bin/ghcup run --ghc 9.4.8 --cabal 3.6.2.0 -- cabal update
|
|
- run: ~/.ghcup/bin/ghcup run --ghc 9.4.8 --cabal 3.6.2.0 -- cabal haddock --enable-documentation
|