Capture rules regarding how GitHub Orgs and repositories, and GitLab Groups are managed in the PMI
For each project we capture the following in the PMI:
- 0..1 GitHub Orgs
- 0..n GitHub repositories
- 0..n GitHub Excluded repositories
- 0..1 GitLab Project Group
All of these PMI fields are editable only by the EMO and administrators.
Mathematically...
- Let
A
= the set of all repositories in the GitHub Org (empty set when the GitHub org is not specified) - Let
B
= the set of all individually-specified GitHub repositories - Let
C
= the set of all individually-specified excluded GitHub repositories - Let
D
= the set of all repositories contained in the GitLab project group, including all repositories in all nested groups (empty set when the GitLab group is not specified).
The set of respositories, then, that a project owns can be summarised as: ((A ∪ B) - C) ∪ D
Further, any given repository should be owned by at most one project.
Repositories that are not owned by any project (e.g., abandoned repositories in the eclipse
GitHub Org) should all be marked as archived.
Now... we're seeing some anomalies.
The Eclipse EMF container (modeling.emf) project owns the same GitHub Org as the Eclipse EMF (modeling.emf.emf) subproject (yes, this project structure, and especially the naming is a painful historical artifact).
Why is the same GitHub Org owned by two projects? (did a committer ask us to do this?) And what is the implication of this arrangement on our GitHub Team management? Do the committers from both projects have the committer-level privileges on the repositories in this Org?
The Eclipse Leda project (automotive.leda) owns a GitHub Org. The Eclipse Leda Incubator project (automotive.leda.incubator) owns individual repositories in that same GitHub Org, resulting in all of the repositories that are owned by the Leda Incubator are also owned by the Leda project.
Is this a supported state? How should we interpret this configuration? What is the implication of this arrangement on our GitHub Team management? Do Leda committers have committer-level privileges on the Leda Incubator repositories?
FWIW, by virtue of the close relationships with these project pairings and the heavy overlap in committer status, we're probably not exposed. Fixing this does not require a fire drill. Right now, I'm just trying to understand and capture intent.