-
Notifications
You must be signed in to change notification settings - Fork 1k
Buildkite OIDC support #14814
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
base: main
Are you sure you want to change the base?
Buildkite OIDC support #14814
Conversation
57d5fc4
to
29635b4
Compare
Related: #14063 |
This flow works for me end-to-end. I built a little Buildkite plugin that makes it work: https://github.com/sj26/pypi-oidc-buildkite-plugin I can create a pending publisher, then using that plugin I can push a test package from a pipeline -- here using my local test version of the warehouse running this branch: steps:
- label: ":python: Publish package to PyPI"
plugins:
- sj26/pypi-oidc:
repository_url: http://web.warehouse.orb.local/legacy/
command: |
python3 setup.py sdist
python3 -m pip install --upgrade twine
twine upload --verbose --repository-url http://web.warehouse.orb.local/legacy/ dist/* https://buildkite.com/sj26/buildkite-test-python/builds/5#018ba431-aa12-451e-90a0-48072b987900 CRUD for pending publishers is pretty good, given the tabbed interface: ![]() but (project) publishers seem very GitHub specific: ![]() Should I extrapolate the design a little to make it tabbed or something? The table might be the trickiest part – publishers aren't always going to have equivalent claims. What's the intention for adding more publishers? @miketheman is that what you're driving at in #14063? |
Hi @sj26, are you still working on this, or should we close this PR? |
I'm sketching out support for Buildkite OIDC tokens as an avenue for trusted publishing into PyPI. Still WIP, but sharing early for feedback 🙏