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

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

向中的管道添加手动批准操作 CodePipeline

您可以将批准操作添加到管道中您希望停止 CodePipeline 管道的阶段,以便其他人可以手动批准或拒绝该操作。

注意

不能将审批操作添加到源阶段。源阶段只能包含源操作。

如果您想在批准操作可供审核时使用 Amazon SNS 发送通知,则必须先满足以下先决条件:

在此示例中,您将创建一个新的审批阶段,并向该阶段添加一个手动审批操作。您也可以向包含其他操作的现有阶段添加手动审批操作。

向 CodePipeline 管道添加手动批准操作(控制台)

您可以使用 CodePipeline 控制台向现有 CodePipeline管道添加批准操作。 Amazon CLI如果要在创建新管道时添加批准操作,则必须使用。

  1. 打开 CodePipeline 控制台,网址为https://console.aws.amazon.com/codepipeline/

  2. 名称中,选择管道。

  3. 在管道详细信息页中,选择编辑

  4. 如果您要在新的阶段添加审批操作,请在管道中您要添加审批请求的时间点选择 + 添加阶段,然后输入阶段名称。在添加阶段页面上的阶段名称中,输入新的阶段名称。例如,添加一个新阶段并将其命名为 Manual_Approval

    如果您要在现有阶段中添加审批操作,请选择编辑阶段

  5. 在要在其中添加审批操作的阶段中,选择 + 添加操作组

  6. 编辑操作页中,执行以下操作:

    1. 操作名称中,输入用于识别操作的名称。

    2. 操作提供程序中的审批下,选择手动审批

    3. (可选)在SNS主题中ARN,选择用于发送批准操作通知的主题名称。

    4. (可选)在 “URL供审阅” 中URL,输入您希望审批者检查的页面或应用程序。批准者可以通过管道控制台视图中包含的链接进行访问。URL

    5. (可选)在注释中,输入您要与审批者共享的任何其他信息。

    6. 选择保存

向 CodePipeline管道添加手动批准操作 (CLI)

您可以使用CLI向现有管道添加批准操作,也可以在创建管道时使用。您可以通过以下方式实现此目的:在创建或编辑的阶段中添加手动审批类型的审批操作。

有关创建和编辑管道的更多信息,请参阅创建管道、阶段和操作在中编辑管道 CodePipeline

要向管道中添加一个仅包含审批操作的阶段,那么在创建或更新管道时,您应包括类似于以下示例的内容。

注意

configuration 部分是可选的。这只是文件的一部分,而不是整个结构。有关更多信息,请参阅 CodePipeline 管道结构参考

{ "name": "MyApprovalStage", "actions": [ { "name": "MyApprovalAction", "actionTypeId": { "category": "Approval", "owner": "AWS", "version": "1", "provider": "Manual" }, "inputArtifacts": [], "outputArtifacts": [], "configuration": { "NotificationArn": "arn:aws:sns:us-east-2:80398EXAMPLE:MyApprovalTopic", "ExternalEntityLink": "http://example.com", "CustomData": "The latest changes include feedback from Bob."}, "runOrder": 1 } ] }

如果批准操作处于其他操作的阶段,则JSON文件中包含该阶段的部分可能与以下示例类似。

注意

configuration 部分是可选的。这只是文件的一部分,而不是整个结构。有关更多信息,请参阅 CodePipeline 管道结构参考

, { "name": "Production", "actions": [ { "inputArtifacts": [], "name": "MyApprovalAction", "actionTypeId": { "category": "Approval", "owner": "AWS", "version": "1", "provider": "Manual" }, "outputArtifacts": [], "configuration": { "NotificationArn": "arn:aws:sns:us-east-2:80398EXAMPLE:MyApprovalTopic", "ExternalEntityLink": "http://example.com", "CustomData": "The latest changes include feedback from Bob." }, "runOrder": 1 }, { "inputArtifacts": [ { "name": "MyApp" } ], "name": "MyDeploymentAction", "actionTypeId": { "category": "Deploy", "owner": "AWS", "version": "1", "provider": "CodeDeploy" }, "outputArtifacts": [], "configuration": { "ApplicationName": "MyDemoApplication", "DeploymentGroupName": "MyProductionFleet" }, "runOrder": 2 } ] }