Skip to content

Add docker automatic build based on Dockerfiles (#686) #90

Add docker automatic build based on Dockerfiles (#686)

Add docker automatic build based on Dockerfiles (#686) #90

Workflow file for this run

name: Build and test on Ubuntu
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
deploy-owl:
name: Install Owl and build doc
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Use OCaml
uses: ocaml/setup-ocaml@v2
with:
ocaml-compiler: '5.1'
# opam-local-packages: |
# *.opam
dune-cache: true
allow-prerelease-opam: true
- name: Deps
# run: sudo apt-get install git build-essential wget unzip aspcud m4 pkg-config libshp-dev libopenblas-dev liblapacke-dev
run: sudo apt-get install aspcud libshp-dev libopenblas-dev liblapacke-dev
- name: OCaml Deps
run: opam install ocaml-compiler-libs alcotest conf-openblas ctypes dune-configurator stdio npy odoc
# @TODO: the doc for submodules, e.g. Matrix.S, are not generated
# Currently rely on manually update docs into the /docs directory
- name: Build doc
run: |
opam exec -- dune build @doc
- name: Deploy
uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: _build/default/_doc/_html
destination_dir: .
- name: Compile Owl and install
run: opam exec -- dune build @install
- name: Run tests
# installing owl-base is a temp hack due to some unknown error in testing
run: |
opam install owl-base
opam exec -- dune runtest -j 1 --no-buffer -p owl