Skip to content
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 10 additions & 14 deletions ADMINS.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,29 +9,25 @@

## Overview

This document explains who the admins are (see below), what they do in opensearch-project, and how they should be doing it. These individuals are members of an "admin" GitHub team that is given Admin-level permissions to every repository in opensearch-project organization. These are individuals that worked on creating the OpenSearch fork, and those that currently support the organization-wide infrastructure, such as the public [CI/CD](https://build.ci.opensearch.org/).
This document outlines the role and responsibilities of the administrators for the [opensearch-project](https://github.com/opensearch-project/) GitHub organization.

The administrators are members of the [GitHub admin team](https://github.com/orgs/opensearch-project/teams/admin), which grants them administrative permissions across all repositories within the [opensearch-project](https://github.com/opensearch-project/) organization. This team includes individuals who were instrumental in the creation of the OpenSearch fork and those who currently manage the organization-wide infrastructure, such as the public [CI/CD](https://build.ci.opensearch.org/).

If you're interested in becoming a maintainer, see [MAINTAINERS](MAINTAINERS.md). If you're interested in contributing, see [CONTRIBUTING](CONTRIBUTING.md).

## Current Admins

| Admin | GitHub ID | Affiliation |
|--------------------| --------------------------------------------------- | ----------- |
| Rishabh Singh | [rishabh6788](https://github.com/rishabh6788) | Amazon |
| Prudhvi Godithi | [prudhvigodithi](https://github.com/prudhvigodithi) | Amazon |
| Sayali Gaikawad | [gaiksaya](https://github.com/gaiksaya) | Amazon |
| Peter Zhu | [peterzhuamazon](https://github.com/peterzhuamazon) | Amazon |
| Zelin Hao | [zelinh](https://github.com/CEHENKLE) | Amazon |
For the current list of admins, please directly refer to the [admin team page](https://github.com/orgs/opensearch-project/teams/admin).

## Admin Permissions

Admins have [admin-level permissions on a repository](https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization). Use those privileges to serve the community and protect the repository as follows.
Admins are granted [admin-level permissions](https://docs.github.com/en/organizations/managing-access-to-your-organizations-repositories/repository-permission-levels-for-an-organization) on a repository. These privileges should be utilized to serve the project community and protect the repositories as follows:
Copy link

Choose a reason for hiding this comment

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

Would it be more correct to say that admins have permissions across all repositories in the opensearch-project organization?

Copy link
Member Author

Choose a reason for hiding this comment

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

I think yes. Will reword it accordingly.


### Prioritize Security

Security is your number one priority. Manage security keys and safeguard access to the repository.

Note that this repository is monitored and supported 24/7 by Amazon Security, see [Reporting a Vulnerability](SECURITY.md) for details.
Note that this repository is monitored and supported 24/7 by OpenSearch Security Team, see [Security Issue Response Process](SECURITY.md) for details.

### Enforce Code of Conduct

Expand All @@ -41,18 +37,18 @@ Act on [CODE_OF_CONDUCT](CODE_OF_CONDUCT.md) violations by revoking access, and

Perform administrative tasks, such as [adding](RESPONSIBILITIES.md#adding-a-new-maintainer) and [removing maintainers](RESPONSIBILITIES.md#removing-a-maintainer).

Please note that maintainers typically do not have admin-level permissions in their repos in this organization. Admin-level permissions allow for sensitive and destructive actions, such as managing security, or deleting a repository. Therefore, admin access in opensearch-project was designed to be deliberately centralized in ways that requires that two people to make any one sensitive change. If you need to perform an admin function, such as adding or removing a maintainer, please [follow the maintainer nomination process](RESPONSIBILITIES.md#becoming-a-maintainer), then ask to effect permissions by tagging `@admin` in your pull request, or the [#maintainers channel on the public Slack](https://opensearch.slack.com/archives/C05L60S4UBT). One of the above-mentioned admins will make this change for you.
Please note that maintainers typically do not have admin-level permissions in their repos in this organization. Admin-level permissions allow for sensitive and destructive actions, such as managing security, or deleting a repository. Therefore, admin access in opensearch-project was designed to be deliberately centralized in ways that requires that two people to make any one sensitive change. If you need to perform an admin function, such as adding or removing a maintainer, please [follow the maintainer nomination process](RESPONSIBILITIES.md#becoming-a-maintainer), then ask to effect permissions by tagging `@opensearch-project/admin` in your pull request, or the [#admin-requests](https://opensearch.slack.com/archives/C051CKVFB2A) channel on the public Slack. One of the admins will review and help facilitate this change for you.
Copy link

Choose a reason for hiding this comment

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

If we're updating this paragraph anyway, I believe the current process involves opening an issue in this (.github) repository that references the PR in the repository where you're adding a maintainer.

For example, I recently opened #337 which pointed to opensearch-project/OpenSearch#18384, which has the nomination details.

In a nutshell, the process is:

  1. Go through the maintainer nomination / removal process.
  2. Open a PR on the repo where the new maintainer is getting added / removed, including details of the process from step 1 (minus individual votes).
  3. Open an issue on the .github repo with a link to the PR from step 2.
  4. Once the admins have updated permissions and resolved the .github issue, merge the PR from step 2.

Copy link
Member Author

Choose a reason for hiding this comment

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

If you need to perform an admin function, such as adding or removing a maintainer, please follow the maintainer nomination process, then ask to effect permissions by tagging @opensearch-project/admin in your pull request, or the #admin-requests channel on the public Slack. One of the admins will review and help facilitate this change for you.

If you need to perform an admin function, such as adding or removing a maintainer, please follow the maintainer nomination process, then ask to effect permissions by opening a issue in .github repo. One of the admins will review and help facilitate this change for you.


How does this rewording looks like?

Not linking destructive action links (like removing a maintainer) on removing permissions just to keep a positive tone and keep this section concise and just to state the current process.


### Adopt Organizational Practices

Adopt organizational practices documented in this repo, work in the open, and collaborate with other admins by opening issues before making process changes. Prefer consistency, and avoid diverging from practices in the opensearch-project organization.

## New Repos

There are currently two ways new repositories may appear in the opensearch-project organization: creating a new repo and adopting, or moving a repo from outside of the organization into it. The process is the same.
There are currently two ways new repositories may appear in the opensearch-project organization: creating a new repository and adopting it, or moving a repository from outside of the organization into it. The process is same.

The AWS Open Source Program Office (OSPO) currently owns and manages the opensearch-project organization, and has permissions to create a new repo. This will change shortly following the [formation of the OpenSearch Software Foundation](https://foundation.opensearch.org/). While the admins above have admin-level permissions, they do not have permissions to create new repositories or move repositories into the organization.
The [OpenSearch Software Foundation](https://foundation.opensearch.org/), a project of The Linux Foundation owns and manages the opensearch-project organization, and has permissions to create a new repository. While the admins have admin-level permissions, they do not have permissions to create new repositories or move repositories into the organization. If you wish to create a repository in this organization, or move a repository into opensearch-project, please contact one of the admins via the [#admin-requests](https://opensearch.slack.com/archives/C051CKVFB2A) channel on the public Slack.

All new repositories inside opensearch-project follow the [security response process](SECURITY.md), and therefore require an Amazon team to be engaged when necessary. If you wish to create a repository in this organization, or move a repository into opensearch-project, please contact one of the above-mentioned admins via the [#maintainers channel on the public Slack](https://opensearch.slack.com/archives/C05L60S4UBT).
All new repositories inside opensearch-project must follow the [Security Issue Response Process](SECURITY.md), and therefore require [OpenSearch Security Response Team](SECURITY.md#security-response-team-srt) to be engaged when necessary.

While the opensearch-project organization has adopted [opensearch-plugin-template-java](https://github.com/opensearch-project/opensearch-plugin-template-java), or [opensearch-project/opensearch-learning-to-rank-base](https://github.com/opensearch-project/opensearch-learning-to-rank-base) in the past, we generally encourage you to start and run with your open-source project outside of the organization, and only consider making it part of it when you wish to include your already very popular component or tool in the "official" distribution. To request moving a repo into this organization, please open a proposal in your repo, have repo maintainers confirm they wish to move, and engage admins via the [#admin-requests channel on the public Slack](https://opensearch.slack.com/archives/C051CKVFB2A).