1name: Deploy to GitHub Pages
3on:
4 push:
5 branches:
6 - main
7 workflow_dispatch:
9permissions:
10 contents: read
11 pages: write
12 id-token: write
14concurrency:
15 group: "pages"
16 cancel-in-progress: false
18jobs:
19 build:
20 runs-on: ubuntu-latest
21 steps:
22 - name: Checkout
23 uses: actions/checkout@v4
25 - name: Setup Node
26 uses: actions/setup-node@v4
27 with:
28 node-version: '20'
29 cache: 'npm'
31 - name: Install dependencies
32 run: npm ci
34 - name: Build
35 run: npm run build
37 - name: Upload artifact
38 uses: actions/upload-pages-artifact@v3
39 with:
40 path: ./dist
42 deploy:
43 environment:
44 name: github-pages
45 url: ${{ steps.deployment.outputs.page_url }}
46 runs-on: ubuntu-latest
47 needs: build
48 steps:
49 - name: Deploy to GitHub Pages
50 id: deployment
51 uses: actions/deploy-pages@v4