ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

使用 AWS CLI 的 delete-approval-rule-template 命令删除 CodeCommit 审批规则模板

2026/9/16 22:15:05 拓冰建站 浏览量
使用 AWS CLI 的 delete-approval-rule-template 命令删除 CodeCommit 审批规则模板 使用 AWS CLI 的 delete-approval-rule-template 命令删除 CodeCommit 审批规则模板【免费下载链接】aws-cliUniversal Command Line Interface for Amazon Web Services项目地址: https://gitcode.com/GitHub_Trending/aw/aws-cli导读本文讲解如何使用 AWS CLI 中aws codecommit delete-approval-rule-template命令删除 AWS CodeCommit 中已不再需要的审批规则模板Approval Rule Template。你将掌握该命令的完整用法、参数含义、命令输出解读以及删除模板时必须注意的约束条件如模板仍与仓库关联时无法删除并了解该命令在 AWS CLI 源码awscli/botocore/data/codecommit/2015-04-13/service-2.json中的底层定义。背景什么是 CodeCommit 审批规则模板在 AWS CodeCommit 中审批规则模板Approval Rule Template是一种可复用的审批策略配置。你可以在模板中定义审批规则例如合并到 main 分支的拉取请求Pull Request必须获得 2 名CodeCommitReview角色的审批然后将模板与一个或多个仓库关联从而让这些仓库的拉取请求自动套用相同的审批要求。模板的创建、查看、关联、列表等操作分别对应 AWS CLI 中的以下命令相关示例见 awscli/examples/codecommit/create-approval-rule-template创建模板示例见 create-approval-rule-template.rstget-approval-rule-template查看模板内容示例见 get-approval-rule-template.rstassociate-approval-rule-template-with-repository将模板关联到仓库示例见 associate-approval-rule-template-with-repository.rstlist-approval-rule-templates列出全部模板delete-approval-rule-template删除模板本文主角命令语法与必需参数delete-approval-rule-template命令只有唯一一个必需参数它用于指定要删除的模板名称。参数是否必需说明取值约束源自 service-2.json--approval-rule-template-name是要删除的审批规则模板名称长度 1~100 个字符见ApprovalRuleTemplateName形状定义service-2.json 中ApprovalRuleTemplateName的max: 100, min: 1基础命令形式aws codecommit delete-approval-rule-template \ --approval-rule-template-name 模板名称官方示例删除指定审批规则模板官方文档示例位于 delete-approval-rule-template.rst展示了删除名为1-approver-for-all-pull-requests的模板aws codecommit delete-approval-rule-template \ --approval-rule-template-name 1-approver-for-all-pull-requests输出{ approvalRuleTemplateId: 41de97b7-EXAMPLE }输出中返回的是被删除模板的系统生成 IDapprovalRuleTemplateId。命令输出解析根据 service-2.json 中DeleteApprovalRuleTemplateOutput形状的定义该命令的输出仅包含一个字段approvalRuleTemplateId必需被删除模板的系统生成 ID。若该模板此前已被删除服务端仍会返回 200 OK 作为响应。也就是说删除模板后CLI 返回的 JSON 中不会包含模板名称或内容只包含模板 ID你可以用它核对本次删除操作实际作用的目标。删除前的关键约束必须先解除模板与仓库的关联从 service-2.json 中DeleteApprovalRuleTemplate操作的错误定义可以看出该命令可能抛出以下异常ApprovalRuleTemplateNameRequiredException未提供模板名称。InvalidApprovalRuleTemplateNameException模板名称非法例如长度超出 1~100 的约束范围。ApprovalRuleTemplateInUseException模板仍与一个或多个仓库关联。其中最重要的是ApprovalRuleTemplateInUseException。其文档明确指出模板仍与一个或多个仓库关联时无法删除需要先移除所有关联再重试。因此删除一个仍在使用中的模板之前需要先完成两步查看该模板关联了哪些仓库aws codecommit list-repositories-for-approval-rule-template \ --approval-rule-template-name 1-approver-for-all-pull-requests对每一个关联的仓库执行解除关联相关示例见 disassociate-approval-rule-template-from-repository.rstaws codecommit disassociate-approval-rule-template-from-repository \ --repository-name MyDemoRepo \ --approval-rule-template-name 1-approver-for-all-pull-requests解除全部关联后再执行delete-approval-rule-template即可成功删除。删除行为说明不影响已创建的拉取请求审批规则根据 service-2.json 中DeleteApprovalRuleTemplate操作的文档说明删除模板不会移除已经基于该模板创建的拉取请求上的审批规则。这意味着删除模板只影响未来——模板不再能被关联到新仓库也不再为新的拉取请求生成审批规则对于删除前已经创建、且正在生效中的拉取请求审批规则它们会继续保留并正常生效不受模板删除的影响。如果你的目标是对历史拉取请求的审批规则做清理需要另行使用delete-pull-request-approval-rule命令逐个处理而不是依赖删除模板。底层实现命令在 AWS CLI 中的定义位置从源码结构看delete-approval-rule-template命令由 AWS CLI 依据 CodeCommit 服务的 API 模型自动生成其定义位于 awscli/botocore/data/codecommit/2015-04-13/service-2.json操作定义DeleteApprovalRuleTemplate对应 HTTP 方法POST请求路径为/输入形状为DeleteApprovalRuleTemplateInput输出形状为DeleteApprovalRuleTemplateOutput输入形状DeleteApprovalRuleTemplateInput仅含approvalRuleTemplateName字段且为必需输出形状DeleteApprovalRuleTemplateOutput仅含approvalRuleTemplateId字段且为必需错误形状ApprovalRuleTemplateNameRequiredException、InvalidApprovalRuleTemplateNameException、ApprovalRuleTemplateInUseException。AWS CLI 会读取该 JSON 模型自动为aws codecommit delete-approval-rule-template生成参数解析、参数校验如名称长度 1~100以及响应 JSON 的解析逻辑因此命令行的参数名、约束与输出字段均与该模型保持一致。总结与常见问题完整删除流程总结list-approval-rule-templates或list-repositories-for-approval-rule-template确认目标模板名称若模板仍与仓库关联先disassociate-approval-rule-template-from-repository逐个解除关联执行delete-approval-rule-template --approval-rule-template-name 模板名称通过输出中的approvalRuleTemplateId确认删除结果。常见问题删除命令提示ApprovalRuleTemplateInUseException—— 模板仍关联着仓库先解除所有关联再重试。删除后历史拉取请求的审批规则还在吗—— 在删除模板不会移除已创建审批规则。模板 ID 是必填的吗—— 不是删除只需模板名称模板 ID 由服务端在响应中返回。【免费下载链接】aws-cliUniversal Command Line Interface for Amazon Web Services项目地址: https://gitcode.com/GitHub_Trending/aw/aws-cli创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考