name: Documentation on: push: branches: [ main ] workflow_dispatch: jobs: build-docs: runs-on: ubuntu-latest permissions: contents: read steps: - uses: actions/checkout@v4 - name: Set up uv uses: astral-sh/setup-uv@v3 with: python-version: '3.12' - name: Install dependencies run: | uv sync --group docs - name: Build documentation run: | uv run make html -C docs - name: Upload documentation artifacts uses: actions/upload-artifact@v4 with: name: documentation path: docs/_build/html/ - name: Upload static files as artifact id: deployment uses: actions/upload-pages-artifact@v3 with: path: docs/_build/html/ deploy-docs: permissions: pages: write id-token: write environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} runs-on: ubuntu-latest needs: build-docs steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4