Skip to content

Commit 0c3ff26

Browse files
committed
Lim edits 2023-06-09
1 parent 705cdaf commit 0c3ff26

File tree

2 files changed

+66
-13
lines changed

2 files changed

+66
-13
lines changed

messages/maintainer_access.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ If you would like to accept this nomination, we ask that you familiarize yoursel
1010
* [Basic development workflow](https://docs.astropy.org/en/latest/development/workflow/development_workflow.html)
1111
* [Guidelines on when to squash or rebase](https://docs.astropy.org/en/latest/development/when_to_rebase.html)
1212
* [Astropy Project Code of Conduct](https://www.astropy.org/code_of_conduct.html)
13+
* [GitHub two-factor authentication](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication)
1314

1415
If you accept, please respond indicating that you've reviewed the developer documentation and that you have read and agree to abide by the Code of Conduct. After we receive that email from you, we will make an announcement and there will be a two week period of comment. After that period is over, your name will be added to the team webpage and you will be given the appropriate Github permissions.
1516

policies/permissions.md

Lines changed: 65 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,41 +8,93 @@ tasks (for example, a maintainer may be given admin rights to a repo to
88
configure CI for the first time or similar). Such permissions must be done
99
temporarily unless prescribed otherwise by this document.
1010

11-
For GitHub, the permissions are enforced by adding individuals to the GitHub team
11+
For GitHub, the
12+
[permissions](https://docs.github.com/en/organizations/managing-user-access-to-your-organizations-repositories/repository-roles-for-an-organization)
13+
are enforced by adding individuals to the GitHub team
1214
matching their role (for example, "Astropy Core Maintainers" or "Astropy
1315
website maintainers" for a core maintainer or the astropy.org team, respectively),
1416
a duty primarily performed at the moment by the Coordination Committee.
1517
Temporary permissions should instead use the "collaborator" feature on Github to
1618
make it clear that these permissions are temporary in nature.
1719

20+
Regardless of access level, even if it is temporary,
21+
[GitHub two-factor authentication](https://docs.github.com/en/authentication/securing-your-account-with-two-factor-authentication-2fa/about-two-factor-authentication)
22+
must be enabled for the affect user accounts.
23+
1824
Additionally, the granter of permissions (usually the Coordination Committee)
1925
should send a message to the new recipient of write permissions listing the
2026
responsibilities and expectations that go with this - a template for this email
21-
is available [in this repo](../messages/core_write_access.md). That message may
27+
is available [in this repo](../messages/maintainer_access.md). That message may
2228
contain a prompt for a response, which should be cc-ed/forwarded to
23-
29+
30+
31+
## Access levels
2432

25-
## Core package maintainers
33+
### Core package maintainers
2634

27-
All maintainers listed for the core package receive *write access** to the
35+
All maintainers listed for the core package receive *write access* to the
2836
repository via the **Astropy Core Maintainers** GitHub team.
2937

30-
## Coordinated package maintainers
38+
### Coordinated package maintainers
3139

3240
Coordinated package maintainers receive **admin access** to the coordinated
33-
package repositories via the **<package name> maintainers** GitHUb team (e.g.,
41+
package repositories via the **<package name> maintainers** GitHub team (e.g.,
3442
'astroquery maintainers').
3543

36-
## Core package release coordinators
44+
### Core package release coordinators
3745

3846
Core package release coordinators receive **admin access** to the core
39-
repository, as well as the astropy-helpers and extension-helpers repositories
40-
since releases of those packages may be tightly coupled to the core package, as
47+
repository, as well as the extension-helpers repository
48+
since releases of those packages may be tightly coupled, as
4149
well as **write access** to the website repository. This is done via the **Core
4250
release maintainers** GitHub team.
4351

44-
## Coordination committee
52+
### Coordination committee
4553

46-
The coordination committee members receive **owner access** to
47-
the astropy organization. In addition, they have access to the project
54+
The Coordination Committee members receive **owner access** to
55+
the astropy GitHub organization. Members who are not familiar or
56+
comfortable with GitHub administration may opt out. However,
57+
a majority of the committee should have access. If necessary,
58+
members should receive GitHub administration training before given access.
59+
60+
In addition, they have access to the project
4861
credentials (or the shared password manager to access the credentials).
62+
As with GitHub access above, members may opt out but the majority and training
63+
rules also apply here.
64+
65+
Regardless of access level, the members are always bound by
66+
[APE 0](https://github.com/astropy/astropy-APEs/blob/main/APE0.rst).
67+
For example, a Coordination Committee member cannot delete or transfer
68+
a repository without first obtaining concensus from the community.
69+
70+
## Other ways to gain access
71+
72+
Besides the process laid out a the beginning of this document,
73+
which might not cover all cases, other ways include:
74+
75+
### Automated access
76+
77+
(TODO: Fill in info from the automated invite bot that Matt Craig deployed.)
78+
79+
### Manual request
80+
81+
If for some reason there was an oversight in the process or a special
82+
situation that is not covered, people could request access
83+
(for themselves or others) using the
84+
[Astropy Github Organisation Administration](https://github.com/astropy/astropy-project/issues/new?assignees=&labels=github-admin&projects=&template=github-admin.yaml)
85+
issue template. Please clearly state the reason for the request.
86+
Once the issue is opened, one of the Coordination Committee members
87+
would handle it as appropriate.
88+
89+
## Removing access
90+
91+
As people switch roles or leave the project completely, GitHub access
92+
would be adjusted accordingly. For example, if a maintainer is no
93+
longer active and is not responsive to developer surveys,
94+
the Coordination Committee has the right to remove this person
95+
from a named role and thus the associated GitHub permission(s).
96+
This also applies to Coordination Commitee members that rotated off.
97+
98+
Anyone that abuses their given priviledge will also have it removed.
99+
Please report any abuse to the Coordination Committee or the Ombudsperson,
100+
as you see fit.

0 commit comments

Comments
 (0)