49 lines
969 B
YAML
49 lines
969 B
YAML
name: build
|
|
|
|
on:
|
|
pull_request:
|
|
push:
|
|
branches:
|
|
- master
|
|
schedule:
|
|
# Prime the caches every Monday
|
|
- cron: 0 1 * * MON
|
|
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
- macos-latest
|
|
ocaml-compiler:
|
|
- "4.14"
|
|
- "5.2"
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Set-up OCaml ${{ matrix.ocaml-compiler }}
|
|
uses: ocaml/setup-ocaml@v3
|
|
with:
|
|
ocaml-compiler: ${{ matrix.ocaml-compiler }}
|
|
|
|
- run: opam install . --with-test --deps-only
|
|
|
|
- name: configure tree
|
|
run: opam exec -- sh ./configure
|
|
|
|
- name: Build
|
|
run: opam exec -- make
|
|
|
|
- name: Run the testsuite
|
|
run: opam exec -- make -C tests test
|
|
|
|
- run: opam install . --with-test
|
|
|
|
- run: opam exec -- git diff --exit-code
|