### https://docs.astro.build/en/guides/deploy/github/ name: Deploy to GitHub Pages on: # Trigger the workflow every time you push to the `main` branch # Using a different branch name? Replace `main` with your branch’s name push: branches: [ main ] # only build if something relevant changed. this filters out things like # readme updates, work on internal tools, etc that wouldn't change the # published content paths: - 'astro.config.mjs' - 'package.json' - 'pnpm-lock.yaml' - 'tsconfig.json' - 'src/**' - 'public/**' # Allows you to run this workflow manually from the Actions tab on GitHub. workflow_dispatch: # Allow this job to clone the repo and create a page deployment permissions: contents: read pages: write id-token: write jobs: build: runs-on: ubuntu-latest steps: - name: Checkout your repository using git uses: actions/checkout@v4 - name: Install, build, and upload your site uses: withastro/action@v3 with: node-version: 22 package-manager: pnpm@10 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