[FIX] Update github workflows for docs generation #1
Workflow file for this run
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 and publish docs | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
workflow_dispatch: | |
branches: [main] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build-docs: | |
runs-on: ubuntu-22.04 | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/cache@v3 | |
id: cache | |
with: | |
path: docs/_build | |
key: docs-${{ hashFiles('./docs') }} | |
- name: Start up the dashboard | |
run: cd containers/devel && docker-compose up -d | |
if: steps.cache.outputs.cache-hit != 'true' | |
- name: Build docs | |
if: steps.cache.outputs.cache-hit != 'true' | |
run: docker exec -t devel_dashboard /bin/bash -c "sphinx-build dashboard/docs dashboard/docs/_build" | |
- name: Repeat build in case non-deterministic build issue arose in last step | |
if: steps.cache.outputs.cache-hit != 'true' | |
run: docker exec -t devel_dashboard /bin/bash -c "sphinx-build dashboard/docs dashboard/docs/_build" | |
publish-docs: | |
needs: build-docs | |
if: github.event_name == 'push' | |
runs-on: ubuntu-22.04 | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/cache@v3 | |
id: cache | |
with: | |
path: docs/_build | |
key: docs-${{ hashFiles('./docs') }} | |
- name: Add .nojekyll file to build folder | |
run: touch docs/_build/.nojekyll | |
- name: Deploy docs if the branch has updated | |
uses: JamesIves/github-pages-deploy-action@v4.4.1 | |
with: | |
branch: gh-pages | |
folder: docs/_build | |
- name: Stop containers | |
if: always() | |
run: cd containers/devel && docker-compose down |