BoilerWorks

ci: add CI lint/test/audit and PyPI publish workflows

anonymous 2026-03-30 03:57 trunk
Commit f451dd361b1a40b958e5b7602151e8412ba1833e6a5904840fae0d669bb903ea
--- .github/workflows/ci.yml
+++ .github/workflows/ci.yml
@@ -6,59 +6,34 @@
66
pull_request:
77
branches: [main]
88
99
jobs:
1010
lint:
11
- name: Lint
12
- runs-on: ubuntu-latest
13
- steps:
14
- - uses: actions/checkout@v4
15
- - uses: astral-sh/setup-uv@v4
16
- with:
17
- version: "latest"
18
- - name: Install dependencies
19
- run: uv sync
20
- - name: Ruff check
21
- run: uv run ruff check .
22
- - name: Ruff format check
23
- run: uv run ruff format --check .
24
-
25
- test:
26
- name: Test
27
- runs-on: ubuntu-latest
28
- steps:
29
- - uses: actions/checkout@v4
30
- - uses: astral-sh/setup-uv@v4
31
- with:
32
- version: "latest"
33
- - name: Install dependencies
34
- run: uv sync
35
- - name: Run tests
36
- run: uv run pytest
37
-
38
- build:
39
- name: Build
40
- runs-on: ubuntu-latest
41
- steps:
42
- - uses: actions/checkout@v4
43
- - uses: astral-sh/setup-uv@v4
44
- with:
45
- version: "latest"
46
- - name: Build package
47
- run: uv build
48
- - name: Verify package
49
- run: |
50
- ls -la dist/
51
- uv run python -c "import boilerworks; print(boilerworks.__version__)"
52
-
53
- audit:
54
- name: Audit
55
- runs-on: ubuntu-latest
56
- steps:
57
- - uses: actions/checkout@v4
58
- - uses: astral-sh/setup-uv@v4
59
- with:
60
- version: "latest"
61
- - name: Install pip-audit
62
- run: uv tool install pip-audit
63
- - name: Run audit
64
- run: uv run pip-audit || true
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v4
14
+ - uses: astral-sh/setup-uv@v5
15
+ with:
16
+ python-version: "3.12"
17
+ - run: uv sync --group dev
18
+ - run: uv run ruff check .
19
+ - run: uv run ruff format --check .
20
+
21
+ test:
22
+ runs-on: ubuntu-latest
23
+ steps:
24
+ - uses: actions/checkout@v4
25
+ - uses: astral-sh/setup-uv@v5
26
+ with:
27
+ python-version: "3.12"
28
+ - run: uv sync --group dev
29
+ - run: uv run pytest
30
+
31
+ audit:
32
+ runs-on: ubuntu-latest
33
+ steps:
34
+ - uses: actions/checkout@v4
35
+ - uses: astral-sh/setup-uv@v5
36
+ with:
37
+ python-version: "3.12"
38
+ - run: uv sync
39
+ - run: uv add --dev pip-audit && uv run pip-audit
6540
6641
ADDED .github/workflows/publish.yml
--- .github/workflows/ci.yml
+++ .github/workflows/ci.yml
@@ -6,59 +6,34 @@
6 pull_request:
7 branches: [main]
8
9 jobs:
10 lint:
11 name: Lint
12 runs-on: ubuntu-latest
13 steps:
14 - uses: actions/checkout@v4
15 - uses: astral-sh/setup-uv@v4
16 with:
17 version: "latest"
18 - name: Install dependencies
19 run: uv sync
20 - name: Ruff check
21 run: uv run ruff check .
22 - name: Ruff format check
23 run: uv run ruff format --check .
24
25 test:
26 name: Test
27 runs-on: ubuntu-latest
28 steps:
29 - uses: actions/checkout@v4
30 - uses: astral-sh/setup-uv@v4
31 with:
32 version: "latest"
33 - name: Install dependencies
34 run: uv sync
35 - name: Run tests
36 run: uv run pytest
37
38 build:
39 name: Build
40 runs-on: ubuntu-latest
41 steps:
42 - uses: actions/checkout@v4
43 - uses: astral-sh/setup-uv@v4
44 with:
45 version: "latest"
46 - name: Build package
47 run: uv build
48 - name: Verify package
49 run: |
50 ls -la dist/
51 uv run python -c "import boilerworks; print(boilerworks.__version__)"
52
53 audit:
54 name: Audit
55 runs-on: ubuntu-latest
56 steps:
57 - uses: actions/checkout@v4
58 - uses: astral-sh/setup-uv@v4
59 with:
60 version: "latest"
61 - name: Install pip-audit
62 run: uv tool install pip-audit
63 - name: Run audit
64 run: uv run pip-audit || true
65
66 DDED .github/workflows/publish.yml
--- .github/workflows/ci.yml
+++ .github/workflows/ci.yml
@@ -6,59 +6,34 @@
6 pull_request:
7 branches: [main]
8
9 jobs:
10 lint:
11 runs-on: ubuntu-latest
12 steps:
13 - uses: actions/checkout@v4
14 - uses: astral-sh/setup-uv@v5
15 with:
16 python-version: "3.12"
17 - run: uv sync --group dev
18 - run: uv run ruff check .
19 - run: uv run ruff format --check .
20
21 test:
22 runs-on: ubuntu-latest
23 steps:
24 - uses: actions/checkout@v4
25 - uses: astral-sh/setup-uv@v5
26 with:
27 python-version: "3.12"
28 - run: uv sync --group dev
29 - run: uv run pytest
30
31 audit:
32 runs-on: ubuntu-latest
33 steps:
34 - uses: actions/checkout@v4
35 - uses: astral-sh/setup-uv@v5
36 with:
37 python-version: "3.12"
38 - run: uv sync
39 - run: uv add --dev pip-audit && uv run pip-audit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
40
41 DDED .github/workflows/publish.yml
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -0,0 +1,31 @@
1
+name: Publish to PyPI
2
+
3
+on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+
8
+jobs:
9
+ build:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v4
13
+ - uses: astral-sh/setup-uv@v5
14
+ with:
15
+ python-version: "3.12"
16
+ - run: uv build
17
+ - uses: actions/upload-artifact@v4
18
+ with:
19
+ name:
20
+ publish:
21
+ needs: build
22
+ runs-on: ubuntu-latest
23
+ environment: release
24
+ permissions:
25
+ id-token: write
26
+ steps:
27
+ - uses: actions/download-artifact@v4
28
+ with:
29
+ name: dist
30
+ path: dist/
31
+ - uses: pypa/gh-action-pypi-publish@release/v1
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
--- a/.github/workflows/publish.yml
+++ b/.github/workflows/publish.yml
@@ -0,0 +1,31 @@
1 name: Publish to PyPI
2
3 on:
4 push:
5 tags:
6 - "v*"
7
8 jobs:
9 build:
10 runs-on: ubuntu-latest
11 steps:
12 - uses: actions/checkout@v4
13 - uses: astral-sh/setup-uv@v5
14 with:
15 python-version: "3.12"
16 - run: uv build
17 - uses: actions/upload-artifact@v4
18 with:
19 name:
20 publish:
21 needs: build
22 runs-on: ubuntu-latest
23 environment: release
24 permissions:
25 id-token: write
26 steps:
27 - uses: actions/download-artifact@v4
28 with:
29 name: dist
30 path: dist/
31 - uses: pypa/gh-action-pypi-publish@release/v1

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button