Skip to content

Commit 235b68a

Browse files
authored
feat: add CI (#3)
1 parent a2400e4 commit 235b68a

3 files changed

Lines changed: 120 additions & 0 deletions

File tree

.github/workflows/docs.yml

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
name: documentation
2+
3+
on:
4+
push:
5+
tags:
6+
- '*'
7+
8+
# security: restrict permissions for CI jobs.
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
build:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v4
18+
with:
19+
persist-credentials: false
20+
21+
- name: Set up Python
22+
uses: actions/setup-python@v5
23+
with:
24+
python-version: '3.12'
25+
26+
- name: Install uv
27+
uses: astral-sh/setup-uv@v6
28+
29+
- name: Install the project
30+
run: uv sync --locked --all-extras --dev
31+
32+
- name: Build the documentation
33+
run: uv run pdoc -o docs/ scheduler
34+
35+
- name: Upload the documentation
36+
uses: actions/upload-pages-artifact@v3
37+
with:
38+
path: docs/
39+
40+
# Deploy the artifact to GitHub pages.
41+
# This is a separate job so that only actions/deploy-pages has the necessary permissions.
42+
deploy:
43+
needs: build
44+
runs-on: ubuntu-latest
45+
permissions:
46+
pages: write
47+
id-token: write
48+
environment:
49+
name: github-pages
50+
url: ${{ steps.deployment.outputs.page_url }}
51+
steps:
52+
- id: deployment
53+
uses: actions/deploy-pages@v4

.github/workflows/linting.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Python Linting and Type Checking
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
9+
jobs:
10+
lint:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Checkout
14+
uses: actions/checkout@v4
15+
16+
- name: Set up Python
17+
uses: actions/setup-python@v5
18+
with:
19+
python-version: '3.12'
20+
21+
- name: Install uv
22+
uses: astral-sh/setup-uv@v6
23+
24+
- name: Install the project
25+
run: uv sync --locked --all-extras --dev
26+
27+
- name: Run Ruff check
28+
run: uv run ruff check . --output-format=github
29+
30+
- name: Run Ty check
31+
run: uv run ty check .

.github/workflows/publish.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: publish
2+
3+
on:
4+
push:
5+
tags:
6+
- '*'
7+
8+
# security: restrict permissions for CI jobs.
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
build:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- name: Checkout
17+
uses: actions/checkout@v4
18+
with:
19+
persist-credentials: false
20+
21+
- name: Set up Python
22+
uses: actions/setup-python@v5
23+
with:
24+
python-version: '3.12'
25+
26+
- name: Install uv
27+
uses: astral-sh/setup-uv@v6
28+
29+
- name: Install the project
30+
run: uv sync --locked --all-extras --dev
31+
32+
- name: Build the package
33+
run: uv run build
34+
35+
- name: Upload the package
36+
run: uv publish

0 commit comments

Comments
 (0)