Skip to content

Commit 9aca336

Browse files
committed
feat: github actions
1 parent e380411 commit 9aca336

5 files changed

Lines changed: 126 additions & 0 deletions

File tree

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "uv"
4+
directory: "/"
5+
schedule:
6+
interval: "weekly"
7+
8+
- package-ecosystem: "github-actions"
9+
directory: "/"
10+
schedule:
11+
interval: "weekly"

.github/workflows/ci.yaml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main, develop]
6+
pull_request:
7+
branches: [main]
8+
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
python:
14+
runs-on: ubuntu-latest
15+
steps:
16+
- uses: actions/checkout@v5
17+
- name: "Set up Python"
18+
uses: actions/setup-python@v6
19+
with:
20+
python-version-file: "pyproject.toml"
21+
- name: Install uv
22+
uses: astral-sh/setup-uv@v6
23+
with:
24+
enable-cache: true
25+
- name: Sync dependencies
26+
run: uv sync --all-packages --all-groups
27+
- name: Run tests
28+
run: uv run pytest
29+
- name: Run linter
30+
run: uv run ruff check .
31+
- name: Run mypy
32+
run: uv run mypy .
33+
- name: Run basedpyright
34+
run: uv run basedpyright .

.github/workflows/docs.yaml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: Docs
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- "docs/**"
9+
- mkdocs.yaml
10+
11+
concurrency:
12+
group: github-pages
13+
cancel-in-progress: false
14+
15+
jobs:
16+
build:
17+
runs-on: ubuntu-latest
18+
permissions:
19+
contents: read
20+
steps:
21+
- uses: actions/checkout@v5
22+
- name: "Set up Python"
23+
uses: actions/setup-python@v6
24+
with:
25+
python-version-file: "pyproject.toml"
26+
- name: Install uv
27+
uses: astral-sh/setup-uv@v6
28+
with:
29+
enable-cache: true
30+
- name: Sync dependencies
31+
run: uv sync --group docs
32+
- name: Build static files
33+
run: uv run mkdocs build
34+
- name: Upload static files as artifact
35+
id: deployment
36+
uses: actions/upload-pages-artifact@v4
37+
with:
38+
path: site/
39+
40+
deploy:
41+
runs-on: ubuntu-latest
42+
environment:
43+
name: github-pages
44+
url: ${{ steps.deployment.outputs.page_url }}
45+
permissions:
46+
pages: write
47+
id-token: write
48+
needs: build
49+
steps:
50+
- name: Deploy to GitHub Pages
51+
id: deployment
52+
uses: actions/deploy-pages@v4

.github/workflows/publish.yaml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Publish
2+
3+
on:
4+
push:
5+
tags:
6+
- v*
7+
8+
jobs:
9+
run:
10+
runs-on: ubuntu-latest
11+
environment:
12+
name: pypi
13+
permissions:
14+
id-token: write
15+
contents: read
16+
steps:
17+
- name: Checkout
18+
uses: actions/checkout@v5
19+
- name: "Set up Python"
20+
uses: actions/setup-python@v6
21+
with:
22+
python-version-file: "pyproject.toml"
23+
- name: Install uv
24+
uses: astral-sh/setup-uv@v6
25+
- name: Build
26+
run: uv build
27+
- name: Publish
28+
run: uv publish

flake.nix

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
nixfmt.enable = true;
4545
ruff-check.enable = true;
4646
ruff-format.enable = true;
47+
prettier.enable = true;
4748
};
4849
};
4950
};

0 commit comments

Comments
 (0)