This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build master in docker | |
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-4.14 | |
options: --user opam # dirty hack | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- run: | | |
sudo apt-get update | |
sudo apt-get install pkg-config libpcre2-dev m4 -y | |
- run: opam --version | |
- name: bisect many not work without it | |
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 | |
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 | |
- run: opam exec -- dune build --profile=release | |
- run: opam exec -- dune test --profile=release | |
- name: Send coverage report to Coveralls | |
run: | | |
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 }} | |
- name: Build documentation | |
if: false | |
run: opam exec -- dune build -p GT @doc | |
- name: Installing using Opam | |
run: | | |
opam exec -- dune build @install | |
opam exec -- dune install | |
- name: Deploy documentation | |
#if: ${{ github.event.pull_request.head.repo.full_name == 'PLTools/OCanren' }} | |
if: false | |
uses: peaceiris/actions-gh-pages@v3 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: ./_build/default/_doc/_html | |
- name: Build API documentation | |
if: github.event_name != 'pull_request' | |
run: | | |
opam exec -- make install odig | |
echo "ODIG_DOC_LOC=$(opam exec -- odig cache path)/html" >> $GITHUB_ENV | |
- name: Deploy documentation | |
#if: ${{ github.event.pull_request.head.repo.full_name == 'PLTools/OCanren' }} | |
if: false | |
uses: peaceiris/actions-gh-pages@v3 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: ${{ env.ODIG_DOC_LOC }} | |
- name: List files | |
run: opam show --list-files GT |