11name : Build and deploy docs
22
33on :
4- # Runs on pushes targeting the default branch
54 push :
65 branches : ["master"]
7-
8- # Allows you to run this workflow manually from the Actions tab
96 workflow_dispatch :
107
11- # Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
128permissions :
139 contents : read
1410 pages : write
1511 id-token : write
1612
17- # Allow one concurrent deployment
1813concurrency :
1914 group : " pages"
2015 cancel-in-progress : true
2116
2217jobs :
23- # Build job
2418 build :
2519 runs-on : ubuntu-latest
2620 steps :
2721 - name : Checkout
28- uses : actions/checkout@v4
22+ uses : actions/checkout@v5
23+
2924 - name : Setup Pages
30- uses : actions/configure-pages@v4
25+ uses : actions/configure-pages@v5
26+
3127 - name : Install uv
3228 uses : astral-sh/setup-uv@v4
3329 with :
3430 version : " latest"
31+
3532 - name : Setup Python
3633 run : uv python install 3.9
34+
3735 - name : Create virtual environment
3836 run : uv venv
39- - name : Install MkDocs and Material for MkDocs
40- run : uv pip install --upgrade mkdocstrings[python] mkdocs-material
41- - name : Install Pillow and CairoSVG (required for social card generation)
42- run : uv pip install --upgrade pillow cairosvg
37+
38+ - name : Install MkDocs and plugins
39+ run : |
40+ uv pip install --upgrade mkdocs mkdocs-material mkdocstrings[python] pillow cairosvg
41+
4342 - name : Build site (_site directory name is used for Jekyll compatiblity)
4443 run : uv run mkdocs build --config-file ./mkdocs.yml --site-dir ./_site
44+
4545 - name : Upload artifact
46- uses : actions/upload-pages-artifact@v3
46+ uses : actions/upload-pages-artifact@v1
47+ with :
48+ path : ./_site
4749
48- # Deployment job
4950 deploy :
51+ needs : build
52+ runs-on : ubuntu-latest
5053 environment :
5154 name : github-pages
52- url : ${{ steps.deployment.outputs.page_url }}
53- runs-on : ubuntu-latest
54- needs : build
5555 steps :
5656 - name : Deploy to GitHub Pages
5757 id : deployment
58- uses : actions/deploy-pages@v1
58+ uses : actions/deploy-pages@v4
0 commit comments