管理审批规则模板 - AWS CodeCommit

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

管理审批规则模板

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

有关托管策略和审批规则模板权限的更多信息,请参阅针对审批规则模板的操作所需的权限适用于 CodeCommit 的 AWS 托管式策略

管理审批规则模板(控制台)

您可以在 CodeCommit 控制台中查看和管理审批规则模板。

管理审批规则模板

  1. 打开 CodeCommit 控制台:https://console.aws.amazon.com/codesuite/codecommit/home

  2. 选择审批规则模板,以查看您登录的 AWS 区域中的审批规则模板列表。

    注意

    审批规则模板仅在创建时所在的 AWS 区域中可用。

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

  4. 进行更改,然后选择 Save

管理审批规则模板 (AWS CLI)

您可以使用以下 AWS CLI 命令管理审批规则模板:

列出 AWS 区域中的所有审批规则模板

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

    aws codecommit list-approval-rule-templates --region us-east-2
  2. 如果成功,该命令返回类似以下内容的输出:

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

获取审批规则模板的内容

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

    aws codecommit get-approval-rule-template --approval-rule-template-name 1-approver-rule-for-all-pull-requests
  2. 如果成功,该命令返回类似以下内容的输出:

    { "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." } }

更新审批规则模板的内容

  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/*\"]}]}"
  2. 如果成功,该命令返回类似以下内容的输出:

    { "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" } }

更新审批规则模板的名称

  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"
  2. 如果成功,该命令返回类似以下内容的输出:

    { "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" } }

更新审批规则模板的描述

  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"
  2. 如果成功,该命令产生类似以下内容的输出:

    { "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" } }

列出与模板关联的所有存储库

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

    aws codecommit list-repositories-for-approval-rule-template --approval-rule-template-name 2-approver-rule-for-main
  2. 如果成功,该命令返回类似以下内容的输出:

    { "repositoryNames": [ "MyDemoRepo", "MyClonedRepo" ] }

列出与存储库关联的所有模板

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

    aws codecommit list-associated-approval-rule-templates-for-repository --repository-name MyDemoRepo
  2. 如果成功,该命令返回类似以下内容的输出:

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