【问题标题】:AWS CodePipeline deploy failedAWS CodePipeline 部署失败
【发布时间】:2019-04-07 13:37:43
【问题描述】:

我正在尝试为我的简单 AWS lambda 函数设置一个持续集成管道。坦白说,这是我第一次使用 AWS 代码管道。我在设置管道时遇到问题。管道中的部署阶段失败。

我创建了一个 CodeBuild

然后我在 CodeDeploy 中创建了一个应用程序

然后我创建了一个 CodePipeline,选择源为 GitHub。从 GitHub 中选择一个存储库和分支。然后将管道与我之前创建的 CodeDeploy 应用程序和 CodeBuild 链接起来。

保存管道并构建管道后,我收到此错误。

当我检查错误详细信息时,它会这样说

Unable to access the artifact with Amazon S3 object key 'the-goodyard-pipelin/BuildArtif/G12YurC' located in the Amazon S3 artifact bucket 'codepipeline-us-east-1-820116794245'. The provided role does not have sufficient permissions.

基本上,该 Bucket 也不存在。 Bucket不是自动创建的吗?我的设置出了什么问题?

Bucket 也存在。它只是抛出错误。

在存储桶中,我也可以看到 zip 文件。

【问题讨论】:

标签: amazon-web-services aws-code-deploy aws-codepipeline aws-codebuild


【解决方案1】:

好吧,错误消息看起来不言自明,您分配给 codebuild 的角色没有足够的访问权限来访问 s3。 转到 codebuild -> 构建项目 -> 选择您的项目 -> 单击选项卡“构建详细信息”。 您将看到一个“服务角色”ARN,如果您单击它,它会将您转到该 IAM 角色(如果您不是该帐户的管理员,您可能没有足够的权限来查看 IAM,因为它是关键权限服务,因此请与管理员核实。) 检查该角色的策略,并检查策略是否具有操作:s3:GetObject on resource: your bucket。 如果没有,那么您需要添加它。使用可视化编辑器,将 S3 用作服务,将 Get* 添加为操作,并将您的 s3 存储桶添加到其中。

【讨论】:

猜你喜欢
  • 2016-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-07
  • 2016-09-20
  • 1970-01-01
  • 2021-09-21
  • 2016-07-10
相关资源
最近更新 更多