52 lines
1.3 KiB
YAML
52 lines
1.3 KiB
YAML
name: Publish documentation
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
paths:
|
|
- 'docs/**'
|
|
- 'great_ai/**'
|
|
- 'mkdocs.yaml'
|
|
- '.forgejo/workflows/docs.yml'
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: pages
|
|
cancel-in-progress: false
|
|
|
|
jobs:
|
|
publish:
|
|
runs-on: docker
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
# The mkdocs git-revision-date plugin reads each page's git history.
|
|
fetch-depth: 0
|
|
|
|
- name: Install uv
|
|
run: |
|
|
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
echo "$HOME/.local/bin" >> "$GITHUB_PATH"
|
|
|
|
- name: Set up Python
|
|
run: uv python install 3.10
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
uv venv --python 3.10
|
|
uv pip install '.[dev]'
|
|
|
|
- name: Build documentation
|
|
run: |
|
|
. .venv/bin/activate
|
|
mkdocs build
|
|
|
|
# The old workflow ran `mkdocs gh-deploy` (GitHub Pages); on this instance
|
|
# built sites are rsynced into the host /pages mount that nginx serves,
|
|
# via the shared ci-actions/deploy-pages action — same as photos/reconcile.
|
|
- name: Deploy to pages mount
|
|
if: github.ref == 'refs/heads/main'
|
|
uses: http://forgejo:3000/andras/ci-actions/deploy-pages@main
|
|
with:
|
|
source: site
|
|
target: great-ai
|