Skip to content

Release

Release #14

Workflow file for this run

name: Release
on:
workflow_dispatch:
concurrency:
group: release
cancel-in-progress: true
jobs:
build:
uses: ./.github/workflows/build.yml
upload:
runs-on: ubuntu-latest
needs: [build]
permissions:
contents: write
issues: write
pull-requests: write
id-token: write
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup tooling
uses: haskell/actions/setup@v2
with:
ghc-version: "8.10"
cabal-version: "3.6"
- name: Freeze dependencies
run: cabal freeze
- name: Cache dependencies
uses: actions/cache@v3
with:
key: ${{ runner.os }}-${{ hashFiles('*.cabal', 'cabal.project.freeze') }}
restore-keys: ${{ runner.os }}-
path: |
~/.cabal/packages
~/.cabal/store
dist-newstyle
- name: Setup NodeJS
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: yarn
- name: Install packages
run: yarn install --immutable
- name: Publish package to Hackage
run: yarn release
env:
HACKAGE_TOKEN: ${{ secrets.HACKAGE_API_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}