1
+ # Sample workflow for building and deploying a VitePress site to GitHub Pages
2
+ #
3
+ name : Deploy VitePress site to Pages
4
+
5
+ on :
6
+ # Runs on pushes targeting the `main` branch. Change this to `master` if you're
7
+ # using the `master` branch as the default branch.
8
+ push :
9
+ branches : [main]
10
+
11
+ # Allows you to run this workflow manually from the Actions tab
12
+ workflow_dispatch :
13
+
14
+ # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
15
+ permissions :
16
+ contents : read
17
+ pages : write
18
+ id-token : write
19
+
20
+ # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
21
+ # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
22
+ concurrency :
23
+ group : pages
24
+ cancel-in-progress : false
25
+
26
+ jobs :
27
+ # Build job
28
+ build :
29
+ runs-on : ubuntu-latest
30
+ steps :
31
+ - name : Checkout
32
+ uses : actions/checkout@v4
33
+ with :
34
+ fetch-depth : 0 # Not needed if lastUpdated is not enabled
35
+ # - uses: pnpm/action-setup@v3 # Uncomment this if you're using pnpm
36
+ # - uses: oven-sh/setup-bun@v1 # Uncomment this if you're using Bun
37
+ - name : Setup Node
38
+ uses : actions/setup-node@v4
39
+ with :
40
+ node-version : 20
41
+ cache : npm # or pnpm / yarn
42
+ - name : Setup Pages
43
+ uses : actions/configure-pages@v4
44
+ - name : Install dependencies
45
+ run : npm ci # or pnpm install / yarn install / bun install
46
+ - name : Build with VitePress
47
+ run : npm run docs:build # or pnpm docs:build / yarn docs:build / bun run docs:build
48
+ - name : Upload artifact
49
+ uses : actions/upload-pages-artifact@v3
50
+ with :
51
+ path : docs/.vitepress/dist
52
+
53
+ # Deployment job
54
+ deploy :
55
+ environment :
56
+ name : github-pages
57
+ url : ${{ steps.deployment.outputs.page_url }}
58
+ needs : build
59
+ runs-on : ubuntu-latest
60
+ name : Deploy
61
+ steps :
62
+ - name : Deploy to GitHub Pages
63
+ id : deployment
64
+ uses : actions/deploy-pages@v4
0 commit comments