diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml new file mode 100644 index 00000000..7ecba5cb --- /dev/null +++ b/.github/workflows/format.yml @@ -0,0 +1,17 @@ +name: format + +on: + push: + branches: + - main + pull_request: + +jobs: + format: + name: format + runs-on: 'ubuntu-latest' + container: ghcr.io/c-cube/c-cube-commmon/ci-doc-5.3:latest + steps: + - uses: actions/checkout@v6 + - run: opam exec -- make format-check + diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index f022b4ca..f08a39ca 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -9,20 +9,14 @@ jobs: deploy: name: Deploy doc runs-on: ubuntu-latest + container: ghcr.io/c-cube/c-cube-commmon/ci-doc-5.3:latest steps: - - uses: actions/checkout@main - - - name: Use OCaml - uses: ocaml/setup-ocaml@v3 - with: - ocaml-compiler: '5.3' - dune-cache: true - allow-prerelease-opam: true + - uses: actions/checkout@v6 # temporary until it's in a release - run: opam pin picos 0.6.0 -y -n - - run: opam install odig moonpool moonpool-lwt -t + - run: opam install moonpool moonpool-lwt -t - run: opam exec -- odig odoc --cache-dir=_doc/ moonpool moonpool-lwt diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index a54303e8..24222352 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,4 +1,4 @@ -name: Build and Test +name: build on: push: @@ -13,22 +13,14 @@ jobs: strategy: fail-fast: true matrix: - os: - - ubuntu-latest - ocaml-compiler: - - '5.0' - - '5.3' + container: + - ghcr.io/c-cube/c-cube-commmon/ci-5.0:latest + - ghcr.io/c-cube/c-cube-commmon/ci-5.4:latest - runs-on: ${{ matrix.os }} + runs-on: ubuntu-latest + container: ${{ matrix.container }} steps: - - uses: actions/checkout@main - - name: Use OCaml ${{ matrix.ocaml-compiler }} - uses: ocaml/setup-ocaml@v3 - with: - ocaml-compiler: ${{ matrix.ocaml-compiler }} - dune-cache: true - allow-prerelease-opam: true - + - uses: actions/checkout@v6 - run: opam pin picos 0.6.0 -y -n - run: opam install -t . --deps-only @@ -40,6 +32,7 @@ jobs: compat: name: build-compat # compat with other OSes + needs: run # only run this if cheap linux job passed timeout-minutes: 15 strategy: fail-fast: true @@ -67,23 +60,3 @@ jobs: # install some depopts - run: opam install thread-local-storage trace domain-local-await - run: opam exec -- dune build --profile=release --force @install @runtest - - format: - name: format - strategy: - matrix: - ocaml-compiler: - - '5.3' - runs-on: 'ubuntu-latest' - steps: - - uses: actions/checkout@main - - name: Use OCaml ${{ matrix.ocaml-compiler }} - uses: ocaml/setup-ocaml@v3 - with: - ocaml-compiler: ${{ matrix.ocaml-compiler }} - dune-cache: true - allow-prerelease-opam: true - - - run: opam install ocamlformat.0.27.0 - - run: opam exec -- make format-check -