-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow configuration of pipeline permissions #15
Comments
@jamestelfer some initial thoughts on this:
|
To lay out my thinking more completely:
default:
permissions: # empty list, no permissions granted
- "content:read"
repositories:
- name: "org/privaterepo" # optional list of repositories to give access by default
permissions: ["content:read"] # optional, defaults to permissions above
- name: "org/otherrepo"
pipelines:
- name: "pipeline name"
repositories:
# potentially implicit here is content:read for the repo of the pipeline
- name: "org/repo1" # overlap here with defaults results in a union of the available properties
permissions: ["content:read", "pull-request:write"]
- name: "org/repo2"
permissions: ["content:read", "pull-request:write"] I'm not devoted to this format. Octo STS has a format that is based on the JWT claims instead of the explicit Buildkite theming here. This also allows different permissions for different repositories, something that GitHub doesn't do: its model is the intersection of a set of repos and permissions. In order to support the above model, the If the permissions can vary by the
Thoughts? |
This is very well thought out, thanks for the details. My only suggestion is that while there's no harm including a |
When you say "the repository" do you mean the repository that the token is being requested for? That is, a configuration YAML that exists in a single repository of a given organization, or, one config for each repository that may be accessed, stored in that target repository itself? |
Tokens issued by the service become more useful when they can be used for GitHub API requests outside Git operations.
Incorporate a simple YAML configuration file that
Bear in mind that periodic retrieval and online reloads will be expected to occur in the future.
The file should be retrieved from the default branch of a configured Git repository.
Out of scope for now:
The text was updated successfully, but these errors were encountered: