name: Build and Test on: push: branches: - master pull_request: jobs: run: name: build strategy: fail-fast: true matrix: os: - macos-latest - ubuntu-latest #- windows-latest ocaml-compiler: - '4.03.x' - '4.14.x' - '5.0.x' - 'ocaml-variants.5.0.0+options,ocaml-option-bytecode-only' runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@main - name: Use OCaml ${{ matrix.ocaml-compiler }} uses: ocaml/setup-ocaml@v2 with: ocaml-compiler: ${{ matrix.ocaml-compiler }} dune-cache: true - run: opam pin -n . - run: opam depext -yt containers containers-data containers-thread - run: opam install -t containers containers-data containers-thread --deps-only if: matrix.os == 'ubuntu-latest' - run: | opam install -t containers --deps-only ; opam install containers-data containers-thread --deps-only # no test deps if: matrix.os != 'ubuntu-latest' - run: opam exec -- dune build '@install' - run: opam exec -- dune runtest if: ${{ matrix.os == 'ubuntu-latest' }} - run: opam exec -- dune runtest -j 1 -p containers # test only core on non-ubuntu platform if: ${{ matrix.os != 'ubuntu-latest' }}