123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- name: Deploy the documentation
- on:
- push:
- branches:
- # For bleeding-edge documentation
- - develop
- # For documentation specific to a release
- - 'release-v*'
- # stable docs
- - master
- workflow_dispatch:
- jobs:
- pre:
- name: Calculate variables for GitHub Pages deployment
- runs-on: ubuntu-latest
- steps:
- # Figure out the target directory.
- #
- # The target directory depends on the name of the branch
- #
- - name: Get the target directory name
- id: vars
- run: |
- # first strip the 'refs/heads/' prefix with some shell foo
- branch="${GITHUB_REF#refs/heads/}"
- case $branch in
- release-*)
- # strip 'release-' from the name for release branches.
- branch="${branch#release-}"
- ;;
- master)
- # deploy to "latest" for the master branch.
- branch="latest"
- ;;
- esac
- # finally, set the 'branch-version' var.
- echo "branch-version=$branch" >> "$GITHUB_OUTPUT"
- outputs:
- branch-version: ${{ steps.vars.outputs.branch-version }}
- ################################################################################
- pages-docs:
- name: GitHub Pages
- runs-on: ubuntu-latest
- needs:
- - pre
- steps:
- - uses: actions/checkout@v4
- with:
- # Fetch all history so that the schema_versions script works.
- fetch-depth: 0
- - name: Setup mdbook
- uses: peaceiris/actions-mdbook@adeb05db28a0c0004681db83893d56c0388ea9ea # v1.2.0
- with:
- mdbook-version: '0.4.17'
- - name: Setup python
- uses: actions/setup-python@v4
- with:
- python-version: "3.x"
- - run: "pip install 'packaging>=20.0' 'GitPython>=3.1.20'"
- - name: Build the documentation
- # mdbook will only create an index.html if we're including docs/README.md in SUMMARY.md.
- # However, we're using docs/README.md for other purposes and need to pick a new page
- # as the default. Let's opt for the welcome page instead.
- run: |
- mdbook build
- cp book/welcome_and_overview.html book/index.html
- # Deploy to the target directory.
- - name: Deploy to gh pages
- uses: peaceiris/actions-gh-pages@373f7f263a76c20808c831209c920827a82a2847 # v3.9.3
- with:
- github_token: ${{ secrets.GITHUB_TOKEN }}
- publish_dir: ./book
- destination_dir: ./${{ needs.pre.outputs.branch-version }}
- ################################################################################
- pages-devdocs:
- name: GitHub Pages (developer docs)
- runs-on: ubuntu-latest
- needs:
- - pre
- steps:
- - uses: actions/checkout@v4
- - name: "Set up Sphinx"
- uses: matrix-org/setup-python-poetry@v1
- with:
- python-version: "3.x"
- poetry-version: "1.3.2"
- groups: "dev-docs"
- extras: ""
- - name: Build the documentation
- run: |
- cd dev-docs
- poetry run make html
- # Deploy to the target directory.
- - name: Deploy to gh pages
- uses: peaceiris/actions-gh-pages@373f7f263a76c20808c831209c920827a82a2847 # v3.9.3
- with:
- github_token: ${{ secrets.GITHUB_TOKEN }}
- publish_dir: ./dev-docs/_build/html
- destination_dir: ./dev-docs/${{ needs.pre.outputs.branch-version }}
|