在 CodePipeline 中批准或拒绝审批操作 - Amazon CodePipeline
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 CodePipeline 中批准或拒绝审批操作

当管道包含审批操作时,管道执行在添加操作的那一点停止。管道将不会恢复,除非有人手动批准该操作。如果审批者拒绝该操作,或者在管道因审批操作停止后的七天内未收到审批响应,则管道状态将变为“Failed”。

如果向管道中添加审批操作的人员配置了通知功能,则您可能会收到一封包含管道信息和批准状态的电子邮件。

批准或拒绝审批操作(控制台)

如果您收到包含审批操作的直接链接的通知,请选择批准或拒绝链接,登录控制台,然后继续执行此处的步骤 7。否则,请按照所有以下步骤操作。

  1. https://console.aws.amazon.com/codepipeline/ 打开 CodePipeline 控制台。

  2. All Pipelines 页面上,选择管道名称。

  3. 查找包含审批操作的阶段。选择审核

    将显示审核对话框。详细信息选项卡显示审核内容和注释。

    详细信息选项卡显示审核内容和注释。

    修订选项卡显示执行的源修订。

    修订选项卡显示执行的源修订。
  4. 详细信息选项卡上,查看注释和 URL(如果有)。该消息还会显示内容的 URL 供您查看(如果已经包含)。

  5. 如果提供了 URL,请选择操作中的用于审阅的 URL 链接以打开目标网页,然后审核内容。

  6. 审核窗口中,输入审核注释,例如您为何批准或拒绝操作,然后选择批准拒绝

  7. 选择提交

批准或拒绝审批请求(CLI)

要使用 CLI 来响应审批操作,您必须先使用 get-pipeline-state 命令来检索与最近一次执行审批操作相关联的令牌。

  1. 在终端(Linux、macOS 或 Unix)或命令提示符 (Windows) 处,对包含审批操作的管道运行 get-pipeline-state 命令。例如,对于名为 MyFirstPipeline 的管道,输入以下内容:

    aws codepipeline get-pipeline-state --name MyFirstPipeline
  2. 在命令响应中,找到 token 值,该值显示在审批操作的 actionStates 部分的 latestExecution 中,如此处所示:

    { "created": 1467929497.204, "pipelineName": "MyFirstPipeline", "pipelineVersion": 1, "stageStates": [ { "actionStates": [ { "actionName": "MyApprovalAction", "currentRevision": { "created": 1467929497.204, "revisionChangeId": "CEM7d6Tp7zfelUSLCPPwo234xEXAMPLE", "revisionId": "HYGp7zmwbCPPwo23xCMdTeqIlEXAMPLE" }, "latestExecution": { "lastUpdatedBy": "identity", "summary": "The new design needs to be reviewed before release.", "token": "1a2b3c4d-573f-4ea7-a67E-XAMPLETOKEN" } } //More content might appear here }
  3. 在纯文本编辑器中,创建一个 JSON 格式文件,您需要添加以下内容:

    • 包含审批操作的管道的名称。

    • 包含审批操作的阶段的名称。

    • 审批操作的名称。

    • 您在上一步中收集的令牌值。

    • 您对操作的响应(“批准”或“拒绝”)。此响应必须大写。

    • 您的摘要注释。

    对于前面的 MyFirstPipeline 示例,您的文件应该与下面类似:

    { "pipelineName": "MyFirstPipeline", "stageName": "MyApprovalStage", "actionName": "MyApprovalAction", "token": "1a2b3c4d-573f-4ea7-a67E-XAMPLETOKEN", "result": { "status": "Approved", "summary": "The new design looks good. Ready to release to customers." } }
  4. 使用类似于 approvalstage-approved.json 的名称保存文件。

  5. 运行 put-approval-result 命令,并指定审批 JSON 文件的名称,类似于以下内容:

    重要

    务必在文件名前包含 file://。此命令中需要该项。

    aws codepipeline put-approval-result --cli-input-json file://approvalstage-approved.json