Skip to content

Publish Documentation #26

Publish Documentation

Publish Documentation #26

name: documentation
on:
workflow_dispatch:
inputs:
release-version:
type: string
required: true
description: 'Version number (for example: 0.1.0)'
permissions:
contents: write
jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Python
uses: actions/setup-python@v5
with:
python-version: 3.9
- name: Install Sphinx
run: |
sudo apt-get update
sudo apt-get install python3-sphinx
- name: Install Poetry
uses: abatilo/actions-poetry@v2
with:
poetry-version: 1.8.3
- name: Create new documentation
run: |
python3 -m venv .venv
source .venv/bin/activate
poetry install --with docs
sed -i 's/release = "v[0-9]\+\.[0-9]\+\.[0-9]\+"/release = "${{ github.event.inputs.release-version }}"/' docs/sphinx/conf.py
pip install sphinx-rtd-theme==2.0.0 # Necessary despite already being installed via poetry
sphinx-apidoc -o docs/sphinx src/codeflare_sdk "**/*test_*" --force
make html -C docs/sphinx
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
publish_branch: gh-pages
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: docs/sphinx/_build/html
force_orphan: true