diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..de28658 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,41 @@ +name: main + +on: + pull_request: + push: + schedule: + # Prime the caches every Monday + - cron: 0 1 * * MON + +jobs: + build: + + strategy: + matrix: + ocaml-compiler: + - "5.1" + - "4.14" + os: + - ubuntu-latest # Linux x86_64 + - macos-latest # MacOS x86_64 + - macos-14 # MacOS ARM64 + + runs-on: ${{ matrix.os }} + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Use OCaml ${{ matrix.ocaml-compiler }} + uses: ocaml/setup-ocaml@v2 + with: + opam-pin: false + opam-depext: false + ocaml-compiler: ${{ matrix.ocaml-compiler }} + + + - run: opam install . --deps-only --with-test + + - run: opam exec -- dune build + + - run: opam exec -- dune runtest