60 lines
1.5 KiB
YAML
60 lines
1.5 KiB
YAML
name: Publish documentation to great-ai.schmelczer.dev
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
paths:
|
|
- 'docs/**'
|
|
- 'great_ai/**'
|
|
- 'mkdocs.yaml'
|
|
- 'pyproject.toml'
|
|
- '.forgejo/workflows/docs.yml'
|
|
pull_request:
|
|
branches: [main]
|
|
paths:
|
|
- 'docs/**'
|
|
- 'great_ai/**'
|
|
- 'mkdocs.yaml'
|
|
- 'pyproject.toml'
|
|
- '.forgejo/workflows/docs.yml'
|
|
workflow_dispatch:
|
|
|
|
concurrency:
|
|
group: docs-${{ github.ref }}
|
|
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.13
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
uv venv --python 3.13
|
|
uv pip install '.[dev]'
|
|
|
|
- name: Build documentation
|
|
run: |
|
|
. .venv/bin/activate
|
|
mkdocs build
|
|
|
|
# As in reconcile, publish through the shared action to /pages/great-ai,
|
|
# served at https://great-ai.schmelczer.dev.
|
|
- name: Deploy to great-ai.schmelczer.dev
|
|
if: (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && github.ref == 'refs/heads/main'
|
|
uses: http://forgejo:3000/andras/ci-actions/deploy-pages@main
|
|
with:
|
|
source: site
|
|
target: great-ai
|