本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
步骤 4:在 CodePipeline 中创建管道
重要
AWS OpsWorks Stacks 不再接受新客户。在 2024 年 5 月 26 日之前,现有客户将能够照常使用 OpsWorks 控制台、API、CLI 和 CloudFormation 资源,届时这些工具或资源将停用。为准备此过渡,我们建议您尽快将堆栈过渡到AWS Systems Manager。有关更多信息,请参阅 AWS OpsWorks Stacks 生命周期终止常见问题解答 和 将 AWS OpsWorks Stacks 应用程序迁移到 AWS Systems Manager Application Manager:
在堆栈具有层以及至少有一个在 AWS OpsWorks Stacks 中配置的实例后,将 AWS OpsWorks Stacks 作为提供程序,在 CodePipeline 中创建管道,以便将应用程序或 Chef 说明书部署到您的 AWS OpsWorks Stacks 资源中。
创建管道
在 https://console.aws.amazon.com/codepipeline/
打开 CodePipeline 控制台。 -
选择 Create pipeline (创建管道)。
-
在 CodePipeline 入门页面上,键入
MyOpsWorksPipeline
或其他在您的账户中独有的管道名称,然后选择 下一步。 -
在 Source Location 页面上,从 Source provider 下拉列表中选择 Amazon S3。
-
在 Amazon S3 详细信息 页面中,键入格式为
s3://
的 Amazon S3 存储桶路径。请参阅您在 步骤 2:将应用程序代码上传到 Amazon S3 存储桶 的步骤 10 中记录的链接。在本演练中,路径为bucket-name
/file name
s3://my-appbucket/opsworks-demo-php-simple-app-version1.zip
。选择 Next step(下一步)。 -
在 Build 页面上,从下拉列表中选择 No Build,然后选择 Next step。
-
在 Deploy (部署) 页面上,选择 AWS OpsWorks Stacks 作为部署提供程序。
-
在 Stack 字段中,键入
MyStack
或者在步骤 1:在 AWS OpsWorks Stacks 中创建堆栈、层和实例中创建的堆栈的名称。 -
在 Layer 字段中,键入
MyLayer
或者在步骤 1:在 AWS OpsWorks Stacks 中创建堆栈、层和实例中创建的层的名称。 -
在应用程序字段中,选择在 步骤 2:将应用程序代码上传到 Amazon S3 存储桶 中上传到 Amazon S3 的应用程序,然后选择 下一步。
-
在 Amazon Web Service 角色 页面上,选择创建角色。
系统将打开一个新窗口,其中的 IAM 控制台页面将介绍将为您创建的角色
AWS-CodePipeline-Service
。从 Policy name 下拉列表中,选择 Create new policy。请确保策略文档具有以下内容。选择 Edit,根据需要更改策略文档。{ "Statement": [ { "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetBucketVersioning" ], "Resource": "*", "Effect": "Allow" }, { "Action": "opsworks:*", "Resource": "*", "Effect": "Allow" } ] }
完成对策略文档的更改后,选择 Allow (允许)。您的更改将显示在 IAM 控制台中。
注意
如果角色创建失败,可能是因为您已经创建了名为 AWS-CodePipeline-Service 的 IAM 角色。如果您在 2016 年 5 月之前已经在使用 AWS-CodePipeline-Service 角色,则该角色可能无权将 AWS OpsWorks Stacks 用作部署提供程序;在这种情况下,您必须更新此步骤中所示的策略声明。如果您看到错误消息,请回到此步骤的开始位置,然后选择 Use existing role (使用现有角色) 而非 Create role (创建角色)。如果您使用现有角色,该角色应随附一个包含此步骤中所示权限的策略。有关服务角色及其策略声明的更多信息,请参阅 Edit a Policy for an IAM Service Role。
-
如果角色创建过程成功,IAM 页面将关闭,并且您将返回 Amazon Web Service 角色页面。选择 Next step(下一步)。
-
在 Review your pipeline 页面上,验证页面上显示的选择,然后选择 Create pipeline。
-
当您的管道已准备就绪,该管道应开始查找您的源代码并自动将应用程序部署到您的堆栈。此过程可能耗时数分钟。