6

我创建了一个管道,它执行以下操作:

  1. Git 更改触发下一个操作(代码构建)
  2. Codebuild 从 git 源启动并构建一个 docker 镜像
  3. 在 Elasticbeanstalk 上设置最新的 docker 容器

前两个步骤工作正常,git 更改启动代码构建,代码构建构建一个 docker 映像,然后尝试在 Elasticbeanstalk 上设置它(失败)。抛出以下错误:

操作配置无效 操作失败,因为找不到工件或 Amazon S3 存储桶。工件存储桶的名称:MY_BUCKET_NAME。验证此存储桶是否存在。如果存在,请检查生命周期策略,然后尝试发布更改。

在我的代码构建项目中,我将工件位置设置为 MY_BUCKET_NAME 并将其命名为 aws-test-artifact。这就是我所要做的吗?

我试过环顾四周,在这个问题上找不到任何东西。

4

3 回答 3

3

我有同样的问题。只是在构建阶段将输入工件从 BuildArtifact 更改为 SourceArtifact,一切正常。

于 2019-07-18T16:26:50.510 回答
2

所以我找到了解决这个问题的方法!我要做的是转到代码构建=>编辑项目=>显示高级设置=>工件打包

从这里我将Artifacts 包装更改为Zip

高级设置部分

于 2016-12-11T20:52:15.350 回答
1

正如 Adam Loving 评论的那样,我们必须添加工件部分。

将此部分添加到您的buildspec.yml文件中将使此工作。

artifacts:
  files:
    - '**/*'

从文档https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html#build-spec.artifacts.files 添加'**/*'会将所有文件包含到构建目标中。

于 2021-06-13T16:47:46.677 回答