name: Crypto on: [push, pull_request] jobs: tests: name: Tests strategy: fail-fast: false matrix: ocaml-version: ["4.14.2"] operating-system: [macos-latest, ubuntu-latest] runs-on: ${{ matrix.operating-system }} steps: - name: Checkout code uses: actions/checkout@v4 - name: Use OCaml ${{ matrix.ocaml-version }} uses: ocaml/setup-ocaml@v3 with: opam-local-packages: | *.opam !mirage-crypto-rng-miou-unix.opam ocaml-compiler: ${{ matrix.ocaml-version }} - name: Install dependencies run: opam install --deps-only -t mirage-crypto mirage-crypto-rng mirage-crypto-rng-mirage mirage-crypto-pk mirage-crypto-ec - name: Build run: opam exec -- dune build -p mirage-crypto,mirage-crypto-rng,mirage-crypto-rng-mirage,mirage-crypto-pk,mirage-crypto-ec - name: Test run: opam exec -- dune runtest -p mirage-crypto,mirage-crypto-rng,mirage-crypto-rng-mirage,mirage-crypto-pk,mirage-crypto-ec build-test-ocaml-5: name : Tests with OCaml 5 strategy: fail-fast: false matrix: ocaml-version: ["5.2.1"] operating-system: [macos-latest, ubuntu-latest] runs-on: ${{ matrix.operating-system }} steps: - name: Checkout code uses: actions/checkout@v4 - name: Use OCaml ${{ matrix.ocaml-version }} uses: ocaml/setup-ocaml@v3 with: opam-local-packages: | mirage-crypto.opam mirage-crypto-rng.opam mirage-crypto-rng-miou-unix.opam ocaml-compiler: ${{ matrix.ocaml-version }} - name: Install dependencies run: opam install --deps-only -t mirage-crypto mirage-crypto-rng mirage-crypto-rng-miou-unix - name: Build run: opam exec -- dune build -p mirage-crypto,mirage-crypto-rng,mirage-crypto-rng-miou-unix - name: Test run: opam exec -- dune runtest -p mirage-crypto,mirage-crypto-rng,mirage-crypto-rng-miou-unix