Skip to content

Bindings cookbook (#120) #29

Bindings cookbook (#120)

Bindings cookbook (#120) #29

Workflow file for this run

name: check and deploy docs and playground
on:
push:
branches:
- master
tags-ignore:
- 'v*'
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 20
cache: yarn
- uses: ocaml/setup-ocaml@v2
with:
ocaml-compiler: 5.2.0
dune-cache: false # can cause trouble when generating melange docs in step below: https://github.com/ocaml/dune/issues/7720
- name: Install all deps
run: make install
- name: Generate melange docs in ml syntax
run: opam reinstall -y melange --with-doc
- name: Copy melange docs in ml syntax
run: cp -r _opam/.opam-switch/build/melange.dev/_build/default/_doc/_html docs/public/api/ml
- name: Generate melange docs in re syntax
run: ODOC_SYNTAX="re" opam reinstall -y melange --with-doc
- name: Copy melange docs in re syntax
run: cp -r _opam/.opam-switch/build/melange.dev/_build/default/_doc/_html docs/public/api/re
- name: Run canonical script
run: opam exec -- dune exec add_canonical docs/public/api
- name: Check Reason syntax
run: make check-reason
- name: Check extracted code blocks
run: make check-extracted-code-blocks
- name: Run tests
run: make test
- name: Build site (and playground)
run: make build-site
- name: Configure Git user
run: |
git config --local user.email "github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
- name: Fetch and checkout gh-pages
run: |
git fetch origin gh-pages --depth=1
git checkout gh-pages
- name: Copy published site into folder
run: cp -TRv docs/.vitepress/dist/ unstable/
- name: Add unstable files to git index
run: git add unstable
- name: Committing
run: git commit -m 'Deployed ${{ github.sha }} to unstable'
- name: Push
run: git push