Minor documentation update to reflect that it was published on hackage #39
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This is the CI for the main branch | |
name: Main CI | |
# Trigger the workflow on push or pull request, but only for the main branch | |
on: | |
pull_request: | |
branches: ["main"] | |
push: | |
branches: ["main"] | |
jobs: | |
# NOTE: Matrixes are not reusable at this time. | |
# SEE: https://github.com/actions/runner/issues/2424 | |
# TODO: More proper build plan to cache and restore in separate jobs: | |
# Matrix: os | |
# Install system deps | |
# Install botan | |
# Checkout repo | |
# Cache deps, botan | |
# Matrix: os, ghc | |
# Restore deps, botan | |
# Setup haskell | |
# Cache haskell | |
# Matrix: os, ghc, target | |
# Restore deps, botan, haskell | |
# Build target | |
# Test target | |
configure: | |
name: Configure and build | |
strategy: | |
fail-fast: false | |
matrix: | |
# TODO: windows-latest | |
os: [ ubuntu-latest, macos-latest ] | |
ghc: [ "9.0.2", "9.2.8", "9.4.7", "9.6.3", "9.8.1" ] | |
# target: [ "botan-bindings", "botan-low", "botan" ] | |
exclude: | |
# NOTE: Fails on 9.0.2 macos m1 arm | |
- os: macos-latest | |
ghc: "9.0.2" | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout base repo | |
uses: actions/checkout@v4 | |
- name: Install Botan for Linux | |
if: ${{ matrix.os == 'ubuntu-latest' }} | |
run: | | |
sudo apt-get -y update | |
sudo apt-get -y install clang build-essential curl libffi-dev libffi8ubuntu1 libgmp-dev libgmp10 libncurses-dev | |
sudo apt-get -y install pkg-config botan | |
- name: Install Botan for MacOS | |
if: ${{ matrix.os == 'macos-latest' }} | |
run: | | |
brew update | |
brew install botan | |
- name: Set up Haskell | |
id: setup-haskell | |
uses: haskell/actions/setup@v2 | |
with: | |
ghc-version: ${{ matrix.ghc }} | |
cabal-version: 'latest' | |
- name: Build botan-bindings with ${{ matrix.ghc }} on ${{ matrix.os }} | |
run: | | |
cabal new-build botan-bindings | |
- id: build-botan-low | |
name: Build botan-low with ${{ matrix.ghc }} on ${{ matrix.os }} | |
run: | | |
cabal new-build botan-low | |
- id: build-botan | |
name: Build botan with ${{ matrix.ghc }} on ${{ matrix.os }} | |
run: | | |
cabal new-build botan | |
# - id: test-botan-low | |
# name: Test botan-low with ${{ matrix.ghc }} on ${{ matrix.os }} | |
# run: | | |
# cabal new-test botan-low |