1- name : Deploy MyST Site
1+ name : Deploy MyST Site to GitHub Pages
22
33on :
44 push :
5- branches : [main]
5+ branches :
6+ - main
67 workflow_dispatch :
78
9+ # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
810permissions :
911 contents : read
1012 pages : write
1113 id-token : write
1214
15+ # Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
16+ # However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
1317concurrency :
1418 group : " pages"
1519 cancel-in-progress : false
@@ -18,36 +22,27 @@ jobs:
1822 build :
1923 runs-on : ubuntu-latest
2024 steps :
21- - uses : actions/checkout@v4
22- - uses : actions/setup-node@v4
25+ - name : Checkout
26+ uses : actions/checkout@v4
27+
28+ - name : Setup Node.js
29+ uses : actions/setup-node@v4
2330 with :
2431 node-version : ' 20'
32+
2533 - name : Install MyST
2634 run : npm install -g mystmd
27- - name : Build site
35+
36+ - name : Build MyST site
2837 run : myst build --html
29- - name : Setup static site structure
30- run : |
31- cp -r _build/templates/site/myst/book-theme/build _build/site/
32- cp -r _build/templates/site/myst/book-theme/public/* _build/site/public/
33- cat > _build/site/index.html << 'EOF'
34- <!DOCTYPE html>
35- <html lang="en">
36- <head>
37- <meta charset="utf-8">
38- <meta name="viewport" content="width=device-width, initial-scale=1">
39- <title>PSCW 2026</title>
40- <script>window.addEventListener('DOMContentLoaded', () => import('/build/index.js'));</script>
41- </head>
42- <body><div id="root"></div></body>
43- </html>
44- EOF
45- - name : Copy CNAME
46- run : cp CNAME _build/site/
38+
39+ - name : Copy CNAME to build directory
40+ run : cp CNAME _build/html/
41+
4742 - name : Upload artifact
4843 uses : actions/upload-pages-artifact@v3
4944 with :
50- path : ./ _build/site
45+ path : ' _build/html '
5146
5247 deploy :
5348 environment :
0 commit comments