Skip to content

Fixes

Fixes #21

Workflow file for this run

name: release
on:
push:
tags:
- "*"
concurrency:
group: build-${{ github.ref }}
cancel-in-progress: true
env:
ghc-version: 9.4.7
cabal-version: 3.10.1.0
maintainer-email: ${{ vars.MAINTAINER_EMAIL }}
tag: ${{ github.ref_name }}
jobs:
build:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Acquire access token
id: access-token
uses: actions/create-github-app-token@v1
with:
app-id: ${{ secrets.GITBOT_APP_ID }}
private-key: ${{ secrets.GITBOT_APP_PRIVATE_KEY }}
- name: Run Pre-Release Checks
run: |
./.github/check-release.sh "${{ env.tag }}" "${{ env.maintainer-email }}"
if [ $? -ne 0 ];
then
echo "${RESULT}"
exit 1
fi
- name: Set up GHC ${{ env.ghc-version }}
uses: haskell-actions/setup@latest
id: setup
with:
ghc-version: ${{ env.ghc-version }}
cabal-version: ${{ env.cabal-version }}
cabal-update: true
- name: Configure the build
run: |
cabal configure --enable-tests --enable-benchmarks --disable-documentation
cabal build all --dry-run
- name: Install dependencies
run: cabal build all --only-dependencies
- name: Build
run: cabal build all
- name: Run tests
run: cabal test all
- name: Check cabal file
run: cabal check
- name: Build documentation
run: cabal haddock all
- name: Build source archive
run: cabal sdist
- name: Create release
uses: ncipollo/release-action@v1
env:
GITHUB_TOKEN: ${{ steps.access-token.outputs.token }}