52 lines
1.3 KiB
YAML
52 lines
1.3 KiB
YAML
name: CI
|
|
|
|
# Controls when the action will run.
|
|
on:
|
|
# Allows you to run this workflow manually from the Actions tab
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os:
|
|
- ubuntu-latest
|
|
- windows-latest
|
|
ocaml-compiler:
|
|
- 4.12.x
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Use OCaml ${{ matrix.ocaml-compiler }}
|
|
uses: ocaml/setup-ocaml@v2
|
|
with:
|
|
ocaml-compiler: ${{ matrix.ocaml-compiler }}
|
|
|
|
- run: opam install . --deps-only
|
|
|
|
- run: opam exec -- dune build
|
|
|
|
- name: Upload a Windows Build Artifact
|
|
uses: actions/upload-artifact@v2.2.3
|
|
if: runner.os == 'Windows'
|
|
with:
|
|
name: nbr-win32.exe
|
|
# A file, directory or wildcard pattern that describes what to upload
|
|
path: _build/install/default/bin/nbr.exe
|
|
retention-days: 1
|
|
|
|
- name: Upload a Linux Build Artifact
|
|
uses: actions/upload-artifact@v2.2.3
|
|
if: runner.os == 'Linux'
|
|
with:
|
|
name: nbr-linux.exe
|
|
# A file, directory or wildcard pattern that describes what to upload
|
|
path: _build/install/default/bin/nbr
|
|
retention-days: 1
|
|
|