# Workflow to publish to GitHub Pages. Based on the normal # job (e.g. https://github.com/ClementTsang/bottom/actions/runs/19805277892), # but re-implemented so I can pin hashes. # # This action uses actions/upload-pages-artifact, which uses actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 (v4.6.2). name: Publish GitHub Pages on: workflow_dispatch: workflow_call: jobs: build: runs-on: ubuntu-24.04 steps: - name: Checkout repository uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 with: ref: gh-pages submodules: recursive fetch-depth: 1 - name: Upload artifact id: upload uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4.0.0 with: path: "./" deploy: runs-on: ubuntu-24.04 needs: build if: github.ref == 'refs/heads/main' environment: name: github-pages url: ${{ steps.deploy.outputs.page_url }} permissions: pages: write id-token: write steps: - name: Deploy to GitHub Pages id: deploy uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5