Skip to content

Merge pull request #206 from unsplash/add-permission-workflow #24

Merge pull request #206 from unsplash/add-permission-workflow

Merge pull request #206 from unsplash/add-permission-workflow #24

Workflow file for this run

name: Publish
on:
push:
tags:
- v*.*.*
jobs:
publish:
name: Publish binaries
strategy:
matrix:
os:
[
{ name: "linux", runner: "ubuntu-latest" },
{ name: "macos", runner: "macos-latest" },
]
runs-on: ${{ matrix.os.runner }}
permissions:
contents: write
steps:
- uses: actions/checkout@v3
# Using Nix causes dynamic linking issues on macOS. It's easier to
# workaround on Linux with patchelf at least. (Yes, building statically
# would be substantially better.)
- uses: haskell/actions/setup@v2
with:
ghc-version: 9.4.6
- run: cabal freeze
- uses: ./.github/actions/cabal-cache
- name: Build
run: |
# Unlike `cabal build`, `cabal install` appears to build in a
# different working directory, which means our githash dependency
# can't access Git at compile time. Related:
# https://github.com/snoyberg/githash/issues/9
cabal build
mv $(find ./dist-newstyle/ -name intlc -type f) dist-newstyle/intlc-${{ github.ref_name }}-${{ matrix.os.name }}-x86_64
- name: Release
uses: softprops/action-gh-release@v1
with:
files: |
dist-newstyle/intlc-${{ github.ref_name }}-${{ matrix.os.name }}-x86_64