Skip to content

Conversation

@cchristous
Copy link

@cchristous cchristous commented Nov 14, 2025

This attempts to implement #18882.

The automated tests are all passing, but I don't have confidence this actually works because I don't know how to test the actual integration. I have access to and familiarity with Semaphore, and I could test using the 2 SaaS services, if the warehouse were deployed. Though, I am hoping there is an easier way to test this, so I could use some guidance on how to proceed.

@cchristous cchristous marked this pull request as ready for review November 14, 2025 05:15
@cchristous cchristous requested a review from a team as a code owner November 14, 2025 05:15
from sqlalchemy.orm import Session


SEMAPHORE_OIDC_ISSUER_URL_SUFFIX = ".semaphoreci.com"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is interesting! Generally our model has been either to support a specific issuer URL or to support custom issuer URLs on a per-organization basis.

Does this mean that there is a different issuer for every SemaphoreCI project? Or generally, what are the expected values here?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this mean that there is a different issuer for every SemaphoreCI project? Or generally, what are the expected values here?

Yes, the expected values are of the format https://<org-name>.semaphoreci.com where org-name is the name of the Semaphore organization (not the GitHub organization). Ref https://docs.semaphore.io/reference/openid#reference.

@di
Copy link
Member

di commented Nov 14, 2025

The automated tests are all passing, but I don't have confidence this actually works because I don't know how to test the actual integration. I have access to and familiarity with Semaphore, and I could test using the 2 SaaS services, if the warehouse were deployed. Though, I am hoping there is an easier way to test this, so I could use some guidance on how to proceed.

I think the best way to test this would be to put it behind a feature flag and enable it only for test.pypi.org first.

@di
Copy link
Member

di commented Nov 20, 2025

@cchristous FYI you have linting errors here

@cchristous
Copy link
Author

@cchristous FYI you have linting errors here

I thought had everything passing, but clearly not. Sorry about that. I ran make tests and make lint and fixed issues, and now they are both passing.

@cchristous cchristous requested a review from di December 17, 2025 13:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants