Skip to content

Commit 3aa984d

Browse files
dreamiurgclaude
andauthored
feat: require tests to pass before creating release (#4)
Splits Release workflow into two jobs: 1. test - Runs pytest suite 2. release - Creates release (only if tests pass) The release job now depends on the test job via 'needs: test', ensuring semantic-release will only tag and publish when all tests pass. This prevents broken releases and adds quality gate to the release process. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude <noreply@anthropic.com>
1 parent f6ffa94 commit 3aa984d

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

.github/workflows/release.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,29 @@ permissions:
1212
pull-requests: write
1313

1414
jobs:
15+
test:
16+
runs-on: ubuntu-latest
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v4
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@v4
28+
29+
- name: Install dependencies
30+
run: uv sync
31+
32+
- name: Run tests
33+
run: uv run pytest -v
34+
1535
release:
1636
runs-on: ubuntu-latest
37+
needs: test
1738
steps:
1839
- name: Checkout
1940
uses: actions/checkout@v4

0 commit comments

Comments
 (0)