New example for base types #36
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
# Main Workflow | |
# ============= | |
name: build | |
# Configure when to run the workflows. Currently only when | |
# it affects the `master` branch (either pushes to the branch, | |
# or pull request against it). | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
# Main workflow | |
# ============= | |
# Build: | |
# - the package, | |
# - the doc and push it to gh-pages | |
# - the examples and push them to the master branch | |
build: | |
runs-on: ${{ matrix.os }} | |
# Build Matrix | |
# -------------- | |
strategy: | |
# Do not cancel other jobs when one fails | |
fail-fast: false | |
matrix: | |
# Operating system to run tests on. | |
# TODO: add macos-latest and windows-latest | |
os: | |
- ubuntu-latest | |
#- macos-latest | |
#- windows-latest | |
# Ocaml version to test | |
ocaml-version: | |
- 5.0.0 | |
- 4.14.0 | |
- 4.13.1 | |
- 4.12.1 | |
# Build ENV | |
# --------- | |
#env: | |
# EXAMPLE | |
# ENVVAR: "VALUE" | |
# Build/test steps | |
# ---------------- | |
steps: | |
# checkout the repo (full clone, necessary for push later) | |
- name: Checkout the repo | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: '1' | |
# Install graphviz to check that the generated examples correctly compiler | |
- name: Install graphviz | |
run: sudo apt install graphviz | |
# Cache the opam directory for faster setups | |
- name: Cach opam directory | |
uses: actions/cache@v2 | |
with: | |
path: ~/.opam | |
key: ${{ matrix.os }}-opam-${{ matrix.ocaml-version }} | |
# Setup ocaml/opam | |
- name: Setup ocaml/opam | |
uses: avsm/setup-ocaml@v1 | |
with: | |
ocaml-version: ${{ matrix.ocaml-version }} | |
# Pin the repo | |
- name: Pin the repo | |
run: opam pin add . --no-action | |
# Install external deps | |
#- name: Install external deps | |
# run: opam depext memgraph --yes --with-doc --with-test | |
# Install ocaml deps | |
- name: Install Ocaml deps | |
run: opam install . --deps-only --with-doc --with-test | |
# Build the package | |
- name: Build the package | |
run: opam exec -- make dune | |
# Check the doc builds | |
- name: Build the doc | |
run: opam exec -- make doc | |
# Check the examples also build | |
- name: Build the examples | |
run: opam exec -- make ex | |
# Un-pin the local repo to avoid polluting the cache | |
- name: Un-pin the local repo | |
run: opam pin remove memgraph memgraph_kitty | |