Amazon web services 如何将构建工件从codepipeline上传到s3 bucket?

Amazon web services 如何将构建工件从codepipeline上传到s3 bucket?,amazon-web-services,aws-codepipeline,aws-codebuild,Amazon Web Services,Aws Codepipeline,Aws Codebuild,我有一个代码管道,它在不同的阶段触发一些代码构建项目。在我的代码构建项目中,我有以下配置 #codebuild.yml Artifacts: Type: CODEPIPELINE ... Source: Type: CODEPIPELINE BuildSpec: buildspec.yml # buildspec.yml version: 0.2 phases: ... artifacts: name:

我有一个代码管道,它在不同的阶段触发一些代码构建项目。在我的代码构建项目中,我有以下配置

#codebuild.yml

Artifacts:
        Type: CODEPIPELINE
...
Source:
        Type: CODEPIPELINE
        BuildSpec: buildspec.yml

# buildspec.yml

version: 0.2
phases:
   ...
artifacts:
                name: test-result
                files:
                  - '**/*'
                  - '*'
在这个配置中,它指定工件并使用
codepippeline
作为工件类型。那么在代码管道中,如何将它们上传到s3 bucket

我能想到的是编写另一个代码构建项目,并使用
awss3
命令行上传文件。但是它太手工了。有没有一种自动完成这项工作的方法

构建工件包括测试结果,我想上传测试结果,不管之前是否失败。有可能在代码管道中实现这一点吗

如何将它们上传到s3 bucket

有两种方法。您已经指出了一点-使用CB操作(相同或不同)使用AWS CLI将文件复制到S3


第二,是使用。这允许您将压缩或解压缩的工件部署到目标存储桶。

如何确保无论上一个操作是否失败,都始终运行该操作?谢谢。@Joey Yizhao我想你不能。From:“失败,当某个阶段中的某个操作未成功完成时。修订不会过渡到该阶段中的下一个操作或管道中的下一个阶段”。因此,如果一个操作失败,后续操作将不会执行。您可以并行执行操作,因此如果您的测试操作不依赖于其他操作,则可以将其作为并行操作运行。