@@ -4,23 +4,21 @@ name: Release
44# artifact installs and runs from a channel with no repo checkout, then upload
55# it to the prefix.dev channel.
66#
7- # ┌─────────────────────────────────────────────────────────────────────────┐
8- # │ MANUAL SETUP REQUIRED before the first release will succeed: │
9- # │ 1. Create the prefix.dev channel `awesomebytes`: │
10- # │ https://prefix.dev/channels/awesomebytes │
11- # │ (rename here and in README if you pick a different channel name). │
12- # │ 2. Add a repository secret PREFIX_API_KEY — a prefix.dev API token with │
13- # │ write access to that channel (Settings → Secrets and variables → │
14- # │ Actions → New repository secret). │
15- # │ Until both exist the build + artifact-test steps still run; only the │
16- # │ upload step fails. │
17- # └─────────────────────────────────────────────────────────────────────────┘
7+ # Authentication: OIDC trusted publishing (no API token stored anywhere).
8+ # prefix.dev → channel `awesomebytes` → Repository Access authorizes
9+ # awesomebytes/rclcppyy, workflow release.yml, with read/write. The
10+ # `id-token: write` permission below lets the job mint the GitHub OIDC token
11+ # that rattler-build exchanges automatically during `upload prefix`.
1812
1913on :
2014 push :
2115 tags :
2216 - ' v*'
2317
18+ permissions :
19+ contents : read
20+ id-token : write
21+
2422concurrency :
2523 group : release-${{ github.ref }}
2624 cancel-in-progress : false
8785 cd "$workdir"
8886 pixi run python smoke.py
8987
90- - name : Upload to the prefix.dev channel `awesomebytes`
91- env :
92- PREFIX_API_KEY : ${{ secrets.PREFIX_API_KEY }}
88+ - name : Upload to the prefix.dev channel `awesomebytes` (OIDC)
9389 run : |
9490 set -euxo pipefail
9591 pixi run -e pkg rattler-build upload prefix --channel awesomebytes \
0 commit comments