如何在Terraform中使用代码管道设置代码构建?

问题描述 投票:0回答:1

我正在尝试将codebuild设置为从具有Terraform的代码代码管道中接收工件。 terraform文件中codebuild资源的相关部分如下所示:

  source {
     type            = "CODEPIPELINE"
     git_clone_depth = 1
  }

运行terraform apply时出现错误,错误是:

错误:创建CodeBuild项目时出错:InvalidInputException:无效输入:使用CodePipeline时,必须将sourceType和artifactType都设置为:CODEPIPELINE状态码:400,请求ID:2c32335e-d3c1-4abd-823b-83e26b947c77

terraform文档中没有关于sourceType的任何内容,也不是arifactType...。如何建立一个安装代码来从具有Terraform的代码管道中接收工件?谢谢!

terraform aws-codepipeline aws-codebuild
1个回答
0
投票

此错误与构建输出工件定义有关:[1]

要解决,请为TF资源上的'源'和'工件'属性定义type ='CODEPIPELINE'aws_codebuild_project

来自https://www.terraform.io/docs/providers/aws/r/codebuild_project.html#artifacts

源代码支持以下内容:

type-(必需)包含源代码的存储库类型待建。此参数的有效值为:CODECOMMIT,CODEPIPELINE,GITHUB,GITHUB_ENTERPRISE,BITBUCKET,S3或NO_SOURCE。

工件支持以下内容:

type-(必需)构建输出工件的类型。的有效值此参数是:CODEPIPELINE,NO_ARTIFACTS或S3。

如果仍然遇到问题,请共享您的TF模板。

Ref:

[1] https://docs.aws.amazon.com/codebuild/latest/APIReference/API_ProjectArtifacts.html

© www.soinside.com 2019 - 2024. All rights reserved.