Skip to content

[WIP] Docs

[WIP] Docs #6

Workflow file for this run

name: Documentation
on:
push:
branches:
- main
pull_request:
types:
- opened
- reopened
- synchronize
- closed
branches:
- main
permissions:
contents: write # needed for pr-preview-action to commit to gh-pages
pull-requests: write
pages: write # for the official pages deployment
id-token: write # for the official pages deployment
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Install uv and set Python version
uses: astral-sh/setup-uv@v5
with:
python-version: "3.12"
enable-cache: true
cache-dependency-glob: "pyproject.toml"
- name: Install dependencies
run: uv sync --group docs
- name: Build site
run: uv run mkdocs build
# For main branch pushes, use official GitHub Pages deployment
- name: Upload Pages artifact
if: github.ref == 'refs/heads/main'
uses: actions/upload-pages-artifact@v3
with:
path: site
- name: Deploy to GitHub Pages
if: github.ref == 'refs/heads/main'
uses: actions/deploy-pages@v4
with:
artifact_name: github-pages
# For PRs, deploy preview using pr-preview-action
- name: Deploy PR Preview
if: github.event_name == 'pull_request'
uses: rossjrw/pr-preview-action@v1
with:
source-dir: site
preview-branch: main
umbrella-dir: pr-preview