Skip to content

Commit e89ce56

Browse files
committed
- release-please.yml: Now handles release creation AND PyPI publishing (no PAT needed)
- release.yml: Manual backup only (workflow_dispatch with tag input)
1 parent 88f5298 commit e89ce56

File tree

2 files changed

+31
-4
lines changed

2 files changed

+31
-4
lines changed

.github/workflows/release-please.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,35 @@ on:
88
permissions:
99
contents: write
1010
pull-requests: write
11+
id-token: write # for PyPI trusted publishing
1112

1213
jobs:
1314
release-please:
1415
runs-on: ubuntu-latest
16+
outputs:
17+
release_created: ${{ steps.release.outputs.release_created }}
18+
tag_name: ${{ steps.release.outputs.tag_name }}
1519
steps:
1620
- uses: googleapis/release-please-action@v4
21+
id: release
1722
with:
1823
config-file: .release-please-config.json
1924
manifest-file: .release-please-manifest.json
25+
26+
publish:
27+
needs: release-please
28+
if: ${{ needs.release-please.outputs.release_created }}
29+
runs-on: ubuntu-latest
30+
permissions:
31+
id-token: write
32+
steps:
33+
- uses: actions/checkout@v6
34+
35+
- name: Install uv
36+
uses: astral-sh/setup-uv@v7
37+
38+
- name: Build package
39+
run: uv build
40+
41+
- name: Publish to PyPI
42+
uses: pypa/gh-action-pypi-publish@release/v1

.github/workflows/release.yml

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1-
name: Release
1+
name: Release (Manual)
22

33
on:
4-
push:
5-
tags:
6-
- "v*"
4+
workflow_dispatch:
5+
inputs:
6+
tag:
7+
description: 'Tag to release (e.g., v0.0.13)'
8+
required: true
79

810
jobs:
911
release:
@@ -13,6 +15,8 @@ jobs:
1315

1416
steps:
1517
- uses: actions/checkout@v6
18+
with:
19+
ref: ${{ inputs.tag }}
1620

1721
- name: Install uv
1822
uses: astral-sh/setup-uv@v7

0 commit comments

Comments
 (0)