Skip to content

Commit 2db0f8a

Browse files
Update Sphinx workflow for GitHub Pages deployment
Enhance Sphinx GitHub Actions workflow - Use ubuntu-latest runner instead of ubuntu-24.04-arm for wider support - Add Python dependency caching for faster builds - Add descriptive step names for better readability in CI logs - Keep minimal required permissions for improved security - Maintain concurrency to prevent overlapping deployments
1 parent 0876a87 commit 2db0f8a

File tree

1 file changed

+26
-15
lines changed

1 file changed

+26
-15
lines changed

.github/workflows/sphinx.yml

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,49 @@
11
name: sphinx
22

33
on:
4-
# Triggers the workflow on push or pull request events but only for the "master" branch
54
push:
65
branches: ["master"]
76
pull_request:
87
branches: ["master"]
9-
# Or manually from the Actions tab
108
workflow_dispatch:
119

12-
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
1310
permissions:
1411
contents: read
1512
pages: write
1613
id-token: write
1714

18-
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
19-
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
2015
concurrency:
2116
group: "pages"
2217
cancel-in-progress: false
2318

2419
jobs:
2520
build_docs:
26-
runs-on: ubuntu-24.04-arm
21+
runs-on: ubuntu-latest
2722
steps:
28-
- uses: actions/checkout@v5
29-
- uses: astral-sh/setup-uv@v6
30-
- uses: actions/setup-python@v5
23+
- name: Checkout repository
24+
uses: actions/checkout@v5
25+
26+
- name: Setup uv
27+
uses: astral-sh/setup-uv@v6
28+
29+
- name: Setup Python
30+
uses: actions/setup-python@v5
3131
with:
32-
python-version: 3.13
32+
python-version: "3.13"
3333
allow-prereleases: true
34-
- run: uv sync --group=docs
35-
- uses: actions/configure-pages@v5
36-
- run: uv run sphinx-build -c docs . docs/_build/html
37-
- uses: actions/upload-pages-artifact@v4
34+
cache: "pip"
35+
36+
- name: Install docs dependencies
37+
run: uv sync --group=docs
38+
39+
- name: Configure GitHub Pages
40+
uses: actions/configure-pages@v5
41+
42+
- name: Build Sphinx documentation
43+
run: uv run sphinx-build -c docs . docs/_build/html
44+
45+
- name: Upload build artifact
46+
uses: actions/upload-pages-artifact@v4
3847
with:
3948
path: docs/_build/html
4049

@@ -46,5 +55,7 @@ jobs:
4655
needs: build_docs
4756
runs-on: ubuntu-latest
4857
steps:
49-
- uses: actions/deploy-pages@v4
58+
- name: Deploy to GitHub Pages
5059
id: deployment
60+
uses: actions/deploy-pages@v4
61+

0 commit comments

Comments
 (0)