name: Build sidekick-bin on: [push] jobs: run: name: Build runs-on: ${{ matrix.operating-system }} strategy: matrix: operating-system: [macos-latest, ubuntu-latest, windows-latest] ocaml-version: [ '4.05.0' ] steps: - uses: actions/checkout@master - uses: avsm/setup-ocaml@master with: ocaml-version: ${{ matrix.ocaml-version }} - name: cache opam id: cache-opam uses: actions/cache@v2 with: path: _opam key: opam-${{matrix.operating-system}}-${{matrix.ocaml-version}} - run: opam pin -n . - run: opam depext -yt sidekick-bin if: steps.cache-opam.outputs.cache-hit != 'true' - run: opam install -t . --deps-only if: steps.cache-opam.outputs.cache-hit != 'true' - run: opam exec -- dune build - run: opam exec -- dune runtest