Skip to content

Workflow file for this run

name: Build master in docker (OCaml 5.2)
on:
# pull_request:
# branches:
# - 'master'
push:
branches:
- 'master'
paths-ignore:
- 'README.md'
env:
OPAMROOT: /home/opam/.opam
OPAMCONFIRMLEVEL: unsafe-yes
GT_WITH_DOCS: yes
jobs:
build:
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
runs-on: ${{ matrix.os }}
container:
image: ocaml/opam:ubuntu-lts-ocaml-5.2
options: --user root # dirty hack
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 1
- run: |
sudo apt-get update
sudo apt-get install pkg-config libpcre2-dev m4 -y
- run: opam --version
- name: Update submodules
if: false
run: |
git config --global --add safe.directory /__w/GT/GT
git submodule update --init
- run: opam pin add GT . --no-action
if: false
- run: opam depext GT --yes #--with-test
if: false
- name: Install dependecies for documentation
if: false
run: |
sudo apt-get install pkg-config libpcre2-dev -y
#opam install odoc pa_ppx --yes --depext
opam install odoc pa_ppx --yes
- run: opam install . --deps-only --with-test --with-doc
- run: opam exec -- dune build --profile=release
- run: opam exec -- dune test --profile=release
- name: Build documentation
run: opam exec -- dune build -p GT @doc
- name: Installing using Opam
run: |
opam exec -- dune build @install
opam exec -- dune install
- name: List files
run: opam show --list-files GT
# disabled, because we will do a deploy from OCaml 4.14
# - name: Deploy documentation
# if: ${{ github.event.pull_request.head.repo.full_name == 'PLTools/OCanren' }}
# uses: peaceiris/actions-gh-pages@v3
# with:
# github_token: ${{ secrets.GITHUB_TOKEN }}
# publish_dir: ./_build/default/_doc/_html
# - name: Send coverage report to Coveralls
# run: |
# #git config --global --add safe.directory /__w/zanuda/zanuda
# opam exec -- make coverage
# opam exec -- bisect-ppx-report send-to Coveralls --coverage-path $BISECT_DIR
# env:
# BISECT_DIR: /tmp/GTcov
# COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# PULL_REQUEST_NUMBER: ${{ github.event.number }}