1
0
Files
synapse/.github/workflows/docs.yaml
Andrew Morgan 7a49d13181 Additionally deploy to a folder named after current Synapse version
Doing so will allow us to build up releases of the docs as we create
and push to release branches.

In the future we'll have some UI on the website to switch between
versions, but for now you can simple just change 'latest' to
'v1.2.3' in the URL.
2021-05-27 18:40:59 +01:00

57 lines
1.9 KiB
YAML

name: Deploy the documentation
on:
push:
branches:
- develop
- release-v*
workflow_dispatch:
jobs:
pages:
name: GitHub Pages
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup mdbook
uses: peaceiris/actions-mdbook@v1
with:
mdbook-version: '0.4.8'
- 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 latest documentation directories
- name: Deploy latest documentation
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
keep_files: true
publish_dir: ./book
destination_dir: ./latest
- name: Get the current Synapse version
id: vars
run: echo ::set-output name=synapse-version::`python3 -c 'import synapse; print(synapse.__version__)'`
# Deploy to the version-specific directory
- name: Deploy release-specific documentation
# We only carry out this step if we're running on a release branch, and the current Synapse version
# does not have "rc" in the name.
# The result is that only full releases are deployed, but can be updated if the release branch gets
# retroactive fixes.
if: ${{ startsWith( github.ref, 'refs/heads/release-v' ) && !contains( steps.vars.outputs.synapse-version, 'rc') }}
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
keep_files: true
publish_dir: ./book
destination_dir: ./v${{ steps.vars.outputs.synapse-version }}