

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 管理审批规则模板
<a name="how-to-manage-templates"></a>

您可以在中管理批准规则模板， AWS 区域 以帮助了解它们的使用方式和用途。例如，您可以编辑审批规则模板的名称和描述，以帮助其他人了解其用途。您可以在中列出所有批准规则模板 AWS 区域，并获取有关模板内容和结构的信息。您可以查看哪些模板与存储库关联，哪些存储库与模板关联。

有关托管策略和审批规则模板权限的更多信息，请参阅[针对审批规则模板的操作所需的权限](auth-and-access-control-permissions-reference.md#aa-art)和[AWS 的托管策略 CodeCommit](security-iam-awsmanpol.md)。

## 管理审批规则模板（控制台）
<a name="how-to-manage-template-console"></a>

您可以在 CodeCommit 控制台中查看和管理您的批准规则模板。<a name="manage-template-console"></a>

## 管理审批规则模板
<a name="manage-template-console"></a>

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 选择**批准规则模板**以查看您登录时 AWS 区域 所在的批准规则模板列表。
**注意**  
批准规则模板仅 AWS 区域 在创建时可用。

1. 如果要对模板进行更改，请从列表中选择该模板，然后选择 **Edit (编辑)**。

1. 进行更改，然后选择 **Save**。

## 管理审批规则模板 (AWS CLI)
<a name="how-to-manage-template-cli"></a>

您可以使用以下 AWS CLI 命令管理审批规则模板：
+ [**list-approval-rule-templates**](#list-templates)，查看中所有批准规则模板的列表 AWS 区域
+ [**get-approval-rule-template**](#get-template)，用于查看审批规则模板的内容
+ [**update-approval-rule-template-content**](#update-template-content)，用于更改审批规则模板的内容
+ [**update-approval-rule-template-name**](#update-template-name)，用于更改审批规则模板的名称
+ [**update-approval-rule-template-description**](#update-template-description)，用于更改审批规则模板的描述
+ [**list-repositories-for-approval-rule-template**](#list-associated-repositories)，用于查看与审批规则模板关联的所有存储库
+ [**list-associated-approval-rule-templates-for-repository**](#list-associated-templates)，用于查看与存储库关联的所有审批规则模板<a name="list-templates"></a>

## 要在中列出所有批准规则模板 AWS 区域
<a name="list-templates"></a>

1. 在终端或命令行中，运行 **list-approval-rule-templates** 命令。例如，要列出美国东部（俄亥俄州）区域中的所有审批规则模板，请运行以下命令：

   ```
   aws codecommit list-approval-rule-templates --region us-east-2
   ```

1. 如果成功，该命令返回类似以下内容的输出：

   ```
   {
       "approvalRuleTemplateNames": [
           "2-approver-rule-for-main",
           "1-approver-rule-for-all-pull-requests"
       ]
   }
   ```<a name="get-template"></a>

## 获取审批规则模板的内容
<a name="get-template"></a>

1. 在终端或命令行中，运行 **get-approval-rule-template** 命令，并指定审批规则模板的名称：

   ```
   aws codecommit get-approval-rule-template --approval-rule-template-name 1-approver-rule-for-all-pull-requests
   ```

1. 如果成功，该命令返回类似以下内容的输出：

   ```
   {
       "approvalRuleTemplate": {
           "approvalRuleTemplateContent": "{\"Version\": \"2018-11-08\",\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 1,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}",
           "ruleContentSha256": "621181bbEXAMPLE",
           "lastModifiedDate": 1571356106.936,
           "creationDate": 1571356106.936,
           "approvalRuleTemplateName": "1-approver-rule-for-all-pull-requests",
           "lastModifiedUser": "arn:aws:iam::123456789012:user/Li_Juan",
           "approvalRuleTemplateId": "a29abb15-EXAMPLE",
           "approvalRuleTemplateDescription": "All pull requests must be approved by one developer on the team."
       }
   }
   ```<a name="update-template-content"></a>

## 更新审批规则模板的内容
<a name="update-template-content"></a>

1. 在终端或命令提示符处，运行 **update-approval-rule-template-content** 命令，并指定模板的名称和更改的内容。例如，要更改名为 **1-approver-rule** 的审批规则模板的内容，以将审批池重新定义为代入 **CodeCommitReview** 角色的用户，请运行以下命令：

   ```
   aws codecommit update-approval-rule-template-content --approval-rule-template-name 1-approver-rule --new-rule-content "{\"Version\": \"2018-11-08\",\"DestinationReferences\": [\"refs/heads/main\"],\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 2,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}"
   ```

1. 如果成功，该命令返回类似以下内容的输出：

   ```
   {
       "approvalRuleTemplate": {
           "creationDate": 1571352720.773,
           "approvalRuleTemplateDescription": "Requires 1 approval for all pull requests from the CodeCommitReview pool",
           "lastModifiedDate": 1571358728.41,
           "approvalRuleTemplateId": "41de97b7-EXAMPLE",
           "approvalRuleTemplateContent": "{\"Version\": \"2018-11-08\",\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 1,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}",
           "approvalRuleTemplateName": "1-approver-rule-for-all-pull-requests",
           "ruleContentSha256": "2f6c21a5EXAMPLE",
           "lastModifiedUser": "arn:aws:iam::123456789012:user/Li_Juan"
       }
   }
   ```<a name="update-template-name"></a>

## 更新审批规则模板的名称
<a name="update-template-name"></a>

1. 在终端或命令提示符处，运行 **update-approval-rule-template-name** 命令，并指定当前名称和更改后的名称。例如，要将审批规则模板的名称从 **1-approver-rule** 更改为 **1-approver-rule-for-all-pull-requests**，请运行以下命令：

   ```
   aws codecommit update-approval-rule-template-name --old-approval-rule-template-name "1-approver-rule" --new-approval-rule-template-name "1-approver-rule-for-all-pull-requests"
   ```

1. 如果成功，该命令返回类似以下内容的输出：

   ```
   {
       "approvalRuleTemplate": {
           "approvalRuleTemplateName": "1-approver-rule-for-all-pull-requests",
           "lastModifiedDate": 1571358241.619,
           "approvalRuleTemplateId": "41de97b7-EXAMPLE",
           "approvalRuleTemplateContent": "{\"Version\": \"2018-11-08\",\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 1,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}",
           "creationDate": 1571352720.773,
           "lastModifiedUser": "arn:aws:iam::123456789012:user/Mary_Major",
           "approvalRuleTemplateDescription": "All pull requests must be approved by one developer on the team.",
           "ruleContentSha256": "2f6c21a5cEXAMPLE"
       }
   }
   ```<a name="update-template-description"></a>

## 更新审批规则模板的描述
<a name="update-template-description"></a>

1. 在终端或命令行中，运行 **update-approval-rule-template-description** 命令，并指定审批规则模板的名称和新描述：

   ```
   aws codecommit update-approval-rule-template-description --approval-rule-template-name "1-approver-rule-for-all-pull-requests" --approval-rule-template-description "Requires 1 approval for all pull requests from the CodeCommitReview pool" 
   ```

1. 如果成功，该命令产生类似以下内容的输出：

   ```
   {
       "approvalRuleTemplate": {
           "creationDate": 1571352720.773,
           "approvalRuleTemplateDescription": "Requires 1 approval for all pull requests from the CodeCommitReview pool",
           "lastModifiedDate": 1571358728.41,
           "approvalRuleTemplateId": "41de97b7-EXAMPLE",
           "approvalRuleTemplateContent": "{\"Version\": \"2018-11-08\",\"Statements\": [{\"Type\": \"Approvers\",\"NumberOfApprovalsNeeded\": 1,\"ApprovalPoolMembers\": [\"arn:aws:sts::123456789012:assumed-role/CodeCommitReview/*\"]}]}",
           "approvalRuleTemplateName": "1-approver-rule-for-all-pull-requests",
           "ruleContentSha256": "2f6c21a5EXAMPLE",
           "lastModifiedUser": "arn:aws:iam::123456789012:user/Li_Juan"
       }
   }
   ```<a name="list-associated-repositories"></a>

## 列出与模板关联的所有存储库
<a name="list-associated-repositories"></a>

1. 在命令行或终端上，运行 **list-repositories-for-approval-rule-template** 命令，并指定模板的名称：

   ```
   aws codecommit list-repositories-for-approval-rule-template --approval-rule-template-name 2-approver-rule-for-main
   ```

1. 如果成功，该命令返回类似以下内容的输出：

   ```
   {
       "repositoryNames": [
           "MyDemoRepo",
           "MyClonedRepo"
       ]
   }
   ```<a name="list-associated-templates"></a>

## 列出与存储库关联的所有模板
<a name="list-associated-templates"></a>

1. 在命令行或终端上，运行 **list-associated-approval-rule-templates-for-repository** 命令，并指定存储库的名称：

   ```
   aws codecommit list-associated-approval-rule-templates-for-repository --repository-name MyDemoRepo
   ```

1. 如果成功，该命令返回类似以下内容的输出：

   ```
   {
       "approvalRuleTemplateNames": [
           "2-approver-rule-for-main",
           "1-approver-rule-for-all-pull-requests"
       ]
   }
   ```