Skip to content

ci: use nix

ci: use nix #213

Workflow file for this run

name: Test partial eval
on:
push:
branches:
- partial_eval
pull_request:
types: []
workflow_dispatch:
permissions:
contents: read
packages: read
jobs:
test:
runs-on: ubuntu-latest
defaults:
run:
# XXX using multi-line string will fail since \n is stuck to the end of the argument.
shell: "nix develop github:katrinafyi/pac-nix#ocamlPackages_pac_4_09.asli --impure --accept-flake-config --command bash {0}"
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v25
- uses: cachix/cachix-action@v14
with: { name: pac-nix }
- run: echo 'preparing nix shell environment'
# it will be nice to make this work, just in case we aslp adds new dependencies
# - uses: ocaml/setup-ocaml@v2
# with:
# ocaml-compiler: ocaml-system.4.09.1 # must match nix develop's ocaml version!
# - run: opam install . --deps-only --with-test
- run: dune build --profile release
- run: ./coverage.sh test
id: coverage
- name: Upload new coverage results
if: always()
uses: actions/upload-artifact@v3
with:
name: coverage-output-${{ github.run_id }}
path: ${{ steps.coverage.outputs.OUTPUT }}