1name: Deploy to GitHub Pages
3on:
4 push:
5 branches: [main]
6 workflow_dispatch:
8permissions:
9 contents: read
10 pages: write
11 id-token: write
13# Allow one concurrent deployment; don't cancel an in-progress production deploy.
14concurrency:
15 group: pages
16 cancel-in-progress: false
18jobs:
19 build:
20 runs-on: ubuntu-latest
21 steps:
22 - uses: actions/checkout@v4
23 - uses: actions/setup-node@v4
24 with:
25 node-version: 22
26 cache: npm
27 - run: npm ci
28 - name: Build
29 run: npm run build:pages
30 - uses: actions/configure-pages@v5
31 - uses: actions/upload-pages-artifact@v3
32 with:
33 path: dist
35 deploy:
36 needs: build
37 runs-on: ubuntu-latest
38 environment:
39 name: github-pages
40 url: ${{ steps.deployment.outputs.page_url }}
41 steps:
42 - id: deployment
43 uses: actions/deploy-pages@v4