-
Notifications
You must be signed in to change notification settings - Fork 115
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: leonardpahlke <leonard.pahlke@googlemail.com>
- Loading branch information
1 parent
d87e808
commit aaf9884
Showing
14 changed files
with
349 additions
and
307 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,41 +1,30 @@ | ||
# Github access permissions and administration | ||
|
||
Facilitation roles are identified in [github settings](/.github/settings.yml) which we use for Github admin permissions and managing issues. | ||
Write permissions are enabled by the [GitHub Settings](/.github/settings.yml) file. | ||
The main GitHub repository for the TAG is `tag-env-sustainability`. TAG Leads have admin access to the repository and elected leads of working groups and projects maintain access which is defined in the [`cncf/people/config.yaml`](https://github.com/cncf/people/blob/main/config.yaml). | ||
|
||
There is typically more process for review and collaboration than is controlled by access permissions. | ||
We expect members to review [governance](/governance) and ask questions by filing a Github issue and/or submit suggested changes via Pull Request if anything is not clear. | ||
The TAG also has technical repositories. | ||
The [`tag-env-tooling`](https://github.com/cncf-tags/tag-env-tooling) contains smaller project, larger projects get sourced in seperate repsitories. | ||
All technical repositories are maintained in the [`cncf-tags`](https://github.com/cncf-tags) GitHub organization. | ||
See [`cncf-tags`](https://github.com/cncf/toc/blob/main/tags/cncf-tags-github-org.md) to find out more about the intention behind the organization. | ||
|
||
Chairs have admin privileges and have access to change settings in the Github UI. | ||
Except where noted below, changes should be made in the repo files to control access privileges, not in the Github UI (so they are visible to everyone.) | ||
- [Github access permissions and administration](#github-access-permissions-and-administration) | ||
- [Adding a commit to a TAG ENV repository](#adding-a-commit-to-a-tag-env-repository) | ||
- [GitHub project board](#github-project-board) | ||
|
||
Note: Members of the CNCF TOC and some CNCF staff also have admin access; however, TAG Roles will be defined transparently using files described below, and will follow TAG processes in making any changes. | ||
## Adding a commit to a TAG ENV repository | ||
|
||
## Settings file | ||
|
||
Pull Requests to appoint members to new Roles in [github settings](/.github/settings.yml) must be approved by at least one Chair, along with whatever additional required process is defined in [roles](roles.md). | ||
When a member has multiple roles, the role defined later in the file (that does not require additional access) is noted in a comment. | ||
PRs to remove someone from a role must be approved by the person themselves or a majority of Chairs. | ||
|
||
## Writing to the main branch | ||
|
||
The following settings are controlled in the Github UI by those with admin access. | ||
The "main" branch is "protected" (even for admins), with these requirements: | ||
|
||
- can't be deleted | ||
- no direct commits (including no "force push"), also | ||
- at least one reviewer must approve | ||
- must be approved by someone listed as a `collaborator` with | ||
`push` or `admin` access | ||
- title must not indicate work in | ||
progress ([WIP](https://github.com/apps/wip)) | ||
|
||
## Housekeeping | ||
|
||
To maintain the main branch in a feasible way the Pull Requests shall come from forked repositories from tag-environmental-sustainability. | ||
After which an unique name should be assigned to identify what will be changed in the forked repository by utilizing branches. | ||
Each contributor, including TAG leadership and CNCF personnel, does not commit directly to the `main` TAG ENV branch. | ||
To commit to the repository, create a branch off to the `main` branch, if you have maintain or admin priviledges, or a [fork](https://docs.github.com/en/get-started/quickstart/fork-a-repo) to the repository. | ||
After changes are made to the branch or fork, the change can be proposed via a [pull request (PR)](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request). | ||
|
||
After being merged the branch will be deleted. | ||
Next contributions shall be in another fresh branch. | ||
This way we keep the repository clean and allows a faster acceptance as it's clear what exactly is addressed. | ||
This highly limits the amount of branches and stops having branches around for longer then needed. | ||
|
||
The [`CONTRIBUTING.md`](../CONTRIBUTING.md) gives more information about how to contribute to the TAG. | ||
|
||
## GitHub project board | ||
|
||
The TAG uses a [project board](https://github.com/orgs/cncf/projects/10) to visualize and track issues. | ||
The project board has views for working groups or projects. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,153 @@ | ||
# TAG Leadership election process | ||
|
||
The leadership team of the TAG (Chairs and TLs) as well as the extended leadership team of working group chairs and project leads are servant leads in the community. | ||
They are an enabler for the group and support the creation and success of the different activities. | ||
They are the driver for the group for not losing the higher targets out of sight and taking decisions when no consensus can be found. | ||
|
||
Roles within the TAG outlining expectations and responsibilities are defined in the [roles](roles.md) governance document. | ||
|
||
The election process for TAG Leadership is described in the first part of this document. | ||
The election process for Working Group and Project leadership is more lightweight and defined in the second part of this document. | ||
|
||
- [TAG Leadership election process](#tag-leadership-election-process) | ||
- [TAG Chair and TL election process](#tag-chair-and-tl-election-process) | ||
- [Process of nominations](#process-of-nominations) | ||
- [Community timeline](#community-timeline) | ||
- [Submitting a nomination](#submitting-a-nomination) | ||
- [Additional note about the TAG Chair proposal process](#additional-note-about-the-tag-chair-proposal-process) | ||
- [General nomination requirements](#general-nomination-requirements) | ||
- [Justification for nominees](#justification-for-nominees) | ||
- [Announcing nomination results](#announcing-nomination-results) | ||
- [Next Steps](#next-steps) | ||
- [Working Group and Project Leadership](#working-group-and-project-leadership) | ||
- [Process of nominations](#process-of-nominations-1) | ||
- [Community timeline](#community-timeline-1) | ||
- [Submitting a nomination](#submitting-a-nomination-1) | ||
|
||
## TAG Chair and TL election process | ||
|
||
### Process of nominations | ||
|
||
TAG Lead roles are open to all interested participants within the community. | ||
Depending on the needs of the community, as determined by the current TAG leadership team (Chairs and TLs), nominations may come from working group co-chairs, TAG co-chairs and/or tech leads and/or other community members. Each TAG is expected to define this for themselves. | ||
|
||
The TAG ENV leadership team is conducted of: | ||
|
||
* Three Co-Chairs | ||
* Tech Leads | ||
|
||
Final nominations will adhere to the [CNCF's TOC described process](https://github.com/cncf/toc/blob/main/tags/cncf-tags.md#elections) as well as to the leadership nomination requirements described below. | ||
|
||
Any individual who is a member of the TAG ENV, it's working group's, or otherwise considered an active participant of the group may nominate another individual. | ||
|
||
The process of endorsing and selecting individuals will consider the following factors to ensure both the need for proper community representation and the necessary technical expertise: | ||
|
||
* Gender diversity | ||
* Company diversity | ||
* Geo diversity | ||
* Number of nominations from different companies, people, regions for a single individual | ||
* Existing body of work | ||
* Justification provided during nomination | ||
|
||
In case there are no individuals expressing interest in taking up leadership positions, an evaluation process for the TAG / working group or project archival may be initiated, as [outlined by the TOC](https://github.com/cncf/toc/blob/main/tags/cncf-tags.md#retirement). | ||
|
||
#### Community timeline | ||
|
||
Community nominations will run for at least 1 month, with a maximum up to 2 months. | ||
|
||
* For TAG Chair nominations, the TOC will take a vote as [described by the TOC](https://github.com/cncf/toc/blob/main/tags/cncf-tags.md#elections). | ||
* For TAG TL, TAG Chairs will vote and propose the nomination to the TOC. The TOC takes the final vote. | ||
* For Working Group and Project Chairs, the TAG Chairs and Leads will take a vote. | ||
|
||
Upon close of nominations, a decision should be made within the next month. | ||
|
||
#### Submitting a nomination | ||
|
||
Nominations are to be submitted to [TAG Co-Chair's email alias](mailto:cncf-tag-env-sus-chairs@lists.cncf.io) with the details: | ||
|
||
* Subject `"NOMINATION $(TAG Chair, TAG TL, WG XYZ Chair): $NAME-OF-NOMINEE"` | ||
* CC the nominee | ||
* Justification | ||
* Nominee Biography | ||
|
||
#### Additional note about the TAG Chair proposal process | ||
|
||
1. Environmental Sustainability TAG Co-chairs operate as a team. The Co-Chair team seeks to maintain full coverage of the leadership capabilities across the key qualities of industry experience, hands-on cloud-native and sustainability experience, as well as administrative experience needed to run a Environmental Sustainability TAG. | ||
2. If a clear successor for the exiting Co-Chair exists based on the merit of their contributions ("plant trees, carry water") and relevant experience that will benefit the TAG, based on the TAG's collective experience over time, the exiting Co-chair may nominate a successor to the TOC. | ||
3. The exiting Co-Chair should propose the desired successor to the other Co-Chairs. If there are any objections, the Co-Chair will have the opportunity to propose another worthy candidate. If Environmental Sustainability TAG Chairs, Tech Leads and TOC Liaisons are unable to put forward a candidate, then a selection process will need to be agreed upon and executed. | ||
4. If no new Chair candidate is available, the role will remain vacant until the Co-chair's, TOC Liaisons or CNCF TOC propose a replacement. | ||
|
||
### General nomination requirements | ||
|
||
The TAG ENV recognizes and values the achievements of individuals who have proven themselves in this community. | ||
If a given nominee does not meet all the requirements, the TAG leadership will still review the nomination and justification to determine if enough intent and commitment is present to move forward with an endorsement. | ||
|
||
**Nominees must**: | ||
|
||
* Be the author of at least one pull request against the TAG ENV repository | ||
* Be active in the community within the last 3 months before their nomination | ||
* Active - Attending at least 1 TAG ENV Regular Meeting a month | ||
* Engaging in community chat via Slack or lists | ||
* Commenting on PRs and issues to drive suggestions to proposals, define scope, resolve clarity issues, etc. | ||
* Agree to the nomination | ||
|
||
*additional requirements may be defined in the specific [roles](roles.md) governance document* | ||
|
||
**Nominations must**: | ||
|
||
* Come from someone other than the nominee | ||
* Have justification from the nominator regarding the nominee's capabilities | ||
|
||
#### Justification for nominees | ||
|
||
To ensure nominations are thoughtful and supported, in addition to the above requirements, a justification must enumerate on the nominee's: | ||
|
||
* TAG Community involvement | ||
* Leadership and collaboration skills | ||
* Willingness to learn and expand existing technical knowledge | ||
|
||
### Announcing nomination results | ||
|
||
The TAG leadership will release aggregate information about the nominees at the end of the nomination process. Aggregate information will not include who nominated someone. | ||
|
||
### Next Steps | ||
|
||
If the role under nomination requires TOC approval or vote, the TAG Co-chairs are responsible for coordinating and executing that in accordance with the TOC's processes (defined previously). | ||
|
||
## Working Group and Project Leadership | ||
|
||
Working group and project leads are appointed by the TAG Chairs through the following process. | ||
|
||
### Process of nominations | ||
|
||
TAG Lead roles are open to all interested participants within the community. | ||
There are currently no limits of leadership roles for working groups or projects if not specifed otherwise in the WG / project charter document. | ||
|
||
The process of endorsing and selecting individuals will consider the following factors to ensure both the need for proper community representation and the necessary technical expertise: | ||
|
||
* Gender diversity | ||
* Company diversity | ||
* Geo diversity | ||
* Number of nominations from different companies, people, regions for a single individual | ||
* Existing body of work | ||
* Justification provided during nomination | ||
|
||
In case there are no individuals expressing interest in taking up leadership positions, an evaluation process for the working group or project archival may be initiated, as [working group archival process](project-formation.md). | ||
|
||
#### Community timeline | ||
|
||
Community nominations will run for at least 2 weeks, with a maximum up to 1 months. | ||
The TAG Chairs will take a vote. | ||
Upon close of nominations, a decision should be made within the next month. | ||
|
||
#### Submitting a nomination | ||
|
||
One of the TAG Leads will open an issue to initiate the nomination process. | ||
Anyone interested can add a comment to the issue to clearly show interest. | ||
The comment should adress the points specified below. | ||
|
||
* Justification | ||
* TAG Community involvement | ||
* Leadership and collaboration skills | ||
* Willingness to learn and expand existing technical knowledge | ||
* Nominee Biography |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.