diff --git a/content/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/governing-how-people-use-repositories-in-your-enterprise.md b/content/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/governing-how-people-use-repositories-in-your-enterprise.md index 12137d78af45..21f0623afd85 100644 --- a/content/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/governing-how-people-use-repositories-in-your-enterprise.md +++ b/content/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/governing-how-people-use-repositories-in-your-enterprise.md @@ -71,6 +71,14 @@ Choose which repositories (current or future) to target in the selected organiza {% data reusables.enterprise.repo-policy-rules-policies-section %} +### Delegating bypass of policies + +{% data reusables.enterprise.repo-policy-rules-delegated-bypass %} + +#### Managing bypass requests + +{% data reusables.enterprise.repo-policy-rules-manage-bypass-request %} + ## Further reading To set additional policies for repository management, see [AUTOTITLE](/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise). diff --git a/content/organizations/managing-organization-settings/governing-how-people-use-repositories-in-your-organization.md b/content/organizations/managing-organization-settings/governing-how-people-use-repositories-in-your-organization.md index cbd2b645398e..2f7b82294ee0 100644 --- a/content/organizations/managing-organization-settings/governing-how-people-use-repositories-in-your-organization.md +++ b/content/organizations/managing-organization-settings/governing-how-people-use-repositories-in-your-organization.md @@ -62,3 +62,11 @@ If you set a dynamic list by name, you'll add one or more naming patterns using ### Policies {% data reusables.enterprise.repo-policy-rules-policies-section %} + +### Delegating bypass of policies + +{% data reusables.enterprise.repo-policy-rules-delegated-bypass %} + +#### Managing bypass requests + +{% data reusables.enterprise.repo-policy-rules-manage-bypass-request %} diff --git a/data/reusables/enterprise/repo-policy-rules-delegated-bypass.md b/data/reusables/enterprise/repo-policy-rules-delegated-bypass.md new file mode 100644 index 000000000000..bc4a4aee23a4 --- /dev/null +++ b/data/reusables/enterprise/repo-policy-rules-delegated-bypass.md @@ -0,0 +1,13 @@ +{% ifversion repo-policy-rules %} + +[!NOTE] Repository policy delegated bypass is in {% data variables.release-phases.public_preview %} and subject to change. + +Delegated bypass for repository policies lets you control who can bypass repository policies for repository deletions and visibility changes. + +With delegated bypass, repository administrators must submit a request to change the visibility of the repository or delete the repository. The request is sent to a designated group of reviewers, who either approve or deny the request to bypass repository policies. + +If the request to bypass repository policies is approved, the request change is completed immediately. If the request is denied, the requested change will not be made but may be re-requested. + +To configure delegated bypass, enterprise owners or organization owners first create a "bypass list". The bypass list includes specific roles and teams, such as team or repository administrators, who oversee requests to bypass repository policies. For more information, see [AUTOTITLE](/admin/managing-accounts-and-repositories/managing-repositories-in-your-enterprise/governing-how-people-use-repositories-in-your-enterprise). + +{% endif %} diff --git a/data/reusables/enterprise/repo-policy-rules-manage-bypass-request.md b/data/reusables/enterprise/repo-policy-rules-manage-bypass-request.md new file mode 100644 index 000000000000..d1a26cd80570 --- /dev/null +++ b/data/reusables/enterprise/repo-policy-rules-manage-bypass-request.md @@ -0,0 +1,19 @@ +## Managing requests to bypass push rules + +[!NOTE] Repository policy delegated bypass is in {% data variables.release-phases.public_preview %} and subject to change. + +You can view and manage all requests for bypass privileges on the “Bypass Requests" page, located under the **Policy** settings. + +You can filter requests by approver (member of the bypass list), requester (contributor making the request), timeframe, and status. The following statuses are assigned to a request: + +|Status|Description| +|---------|-----------| +|`Cancelled`| The request has been cancelled by the contributor.| +|`Completed`|The request has been approved and the commit(s) have been pushed to the repository.| +|`Denied`|The request has been reviewed and denied.| +|`Expired`| The request has expired. Requests are valid for 7 days. | +|`Open`| The request has either not yet been reviewed, or has been approved but the commit(s) have not been pushed to the repository. | + +When a contributor requests bypass privileges to push a commit containing restricted content, members of the bypass list all receive an email notification containing a link to the request. Members of the bypass list then have 7 days to review and either approve or deny the request before the request expires. + +The contributor is notified of the decision by email and must take the required action. If the request is approved, the contributor can push the commit containing the restricted content to the repository. If the request is denied, the contributor must remove the restricted content from the commit in order to successfully push the commit to the repository. diff --git a/data/reusables/repositories/about-push-rule-delegated-bypass.md b/data/reusables/repositories/about-push-rule-delegated-bypass.md index f92756a2f2b4..3de93a8f5950 100644 --- a/data/reusables/repositories/about-push-rule-delegated-bypass.md +++ b/data/reusables/repositories/about-push-rule-delegated-bypass.md @@ -1,5 +1,3 @@ ->[!NOTE] Delegated bypass for push rules is currently in {% data variables.release-phases.public_preview %} and subject to change. - Delegated bypass for push rulesets lets you control who can bypass push protection and which blocked pushes should be allowed. With delegated bypass, contributors to a repository must request "bypass privileges" when pushing commits that contain restricted content. The request is sent to a designated group of reviewers, who either approve or deny the request to bypass push rules. diff --git a/data/reusables/repositories/managing-delegated-bypass.md b/data/reusables/repositories/managing-delegated-bypass.md index 6e1528992869..8766af6fa158 100644 --- a/data/reusables/repositories/managing-delegated-bypass.md +++ b/data/reusables/repositories/managing-delegated-bypass.md @@ -1,7 +1,5 @@ ## Managing requests to bypass push rules ->[!NOTE] Delegated bypass for push rules is currently in {% data variables.release-phases.public_preview %} and subject to change. - You can view and manage all requests for bypass privileges on the “Bypass Requests" page, located under the **Rules** settings of the repository. {% data reusables.repositories.navigate-to-repo %}