1

我创建了以下内容:

  • AppConfig,有configurationProfile(来源是CodePipeline)
  • 代码提交
  • 代码构建
  • 代码管道。

当 CodeCommit 中存在的 test.json 文件发生更改时,我将代码管道配置为部署到 AppConfig 中。

但是,每个部署尝试都失败并出现以下错误:

BadRequestException 在尝试开始部署应用程序 j3wn7j2、环境 2df8rwe、配置文件 abcata7 时捕获,版本为 ee00d908-0235-4a7a-aba1-70cd2e0fda90。消息:无法使用位于 Amazon S3 工件存储桶“codepipeline-eu-west-1-634809616452”中的 Amazon S3 对象键“qwrqwrqwr/BuildArtif/TVsQbS0”访问工件。提供的角色没有足够的权限。(服务:AmazonAppConfig;状态代码:400;错误代码:BadRequestException;请求 ID:18947231-10d8-4914-93d3-badcf442aca8;代理:null)

我试图做的事情:

  • 检查了 CodePipeline 的 IAM 角色,并确保它具有 S3 权限
  • 尝试授予 AppConfig 从 S3 存储桶读取的权限,但无法找到将 Iam 角色附加到 AmazonAppConfig 资源的任何位置。
  • 将以下策略添加到 S3 (codepipeline-eu-west-1-634809616452):

{“版本”:“2012-10-17”,“Id”:“SSEAndSSLPolicy”,“声明”:[{“Sid”:“admin”,“效果”:“允许”,“主体”:{“AWS ": "arn:aws:iam::044559349107:root" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::codepipeline-eu-west-1-634809616452/* " } ] }

我错过了什么吗???

4

1 回答 1

2

找到了解决办法,和权限无关!我刚刚在 CodeBuild 中添加了工件步骤:

version: 0.2
artifacts:
  files:
    - '**/*'

它是固定的。

于 2021-08-30T16:49:37.527 回答