name: Deploy site to GitHub Pages on: push: branches: [main] paths: - 'site/**' - '.github/workflows/deploy-site.yml' workflow_dispatch: # Allow GITHUB_TOKEN to deploy to Pages and verify the deployment origin. permissions: contents: read pages: write id-token: write # One deploy at a time; let an in-progress run finish. concurrency: group: pages cancel-in-progress: false jobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Build with Astro uses: withastro/action@v3 with: path: site node-version: 22 deploy: needs: build runs-on: ubuntu-latest environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4