github-pages.yml 937 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. name: Build and deploy Docs site to GitHub Pages
  2. on:
  3. workflow_dispatch:
  4. push:
  5. branches:
  6. - main
  7. permissions:
  8. contents: write
  9. jobs:
  10. github-pages:
  11. runs-on: ubuntu-latest
  12. steps:
  13. - name: Checkout Repo
  14. uses: actions/checkout@v6
  15. - name: Setup Python
  16. uses: actions/setup-python@v6
  17. with:
  18. python-version: '3.11'
  19. - name: Install uv
  20. uses: astral-sh/setup-uv@v8.0.0
  21. - name: Sync Docs Tooling
  22. run: uv sync --locked --group docs
  23. - name: Build
  24. run: uv run --group docs mkdocs build
  25. - name: Write CNAME
  26. if: ${{ vars.PAGES_CNAME != '' }}
  27. run: printf '%s\n' "${{ vars.PAGES_CNAME }}" > site/CNAME
  28. - name: Deploy to GitHub Pages
  29. uses: peaceiris/actions-gh-pages@v4
  30. with:
  31. github_token: ${{ secrets.GITHUB_TOKEN }}
  32. publish_dir: ./site
  33. publish_branch: 'gh-pages'