|
name: Deploy Documentation |
|
on: |
|
push: |
|
branches: [main] |
|
pull_request: |
|
branches: [main] |
|
|
|
jobs: |
|
build: |
|
runs-on: ubuntu-latest |
|
steps: |
|
- name: Checkout Repository |
|
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 |
|
with: |
|
persist-credentials: false |
|
|
|
- name: Set up Python |
|
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 |
|
with: |
|
python-version: '3.x' |
|
|
|
- name: Install Dependencies |
|
run: pipx run nox -s docs |
|
|
|
- name: Upload docs build as artifact |
|
uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0 |
|
with: |
|
name: ${{ github.event.repository.name }}_docs |
|
path: ${{ github.workspace }}/site |
|
|
|
deploy: |
|
if: github.ref == 'refs/heads/main' |
|
runs-on: ubuntu-latest |
|
needs: [build] |
|
permissions: |
|
# to deploy to Pages |
|
pages: write |
|
# to verify the deployment originates from an appropriate source |
|
id-token: write |
|
# Deploy to the github-pages environment |
|
environment: |
|
name: github-pages |
|
url: ${{ steps.deployment.outputs.page_url }} |
|
steps: |
|
- name: Deploy to GitHub Pages |
|
id: deployment |
|
uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5.0.0 |
|
with: |
|
artifact_name: ${{ github.event.repository.name }}_docs |