如何解决Terraform - 多个 AWS 代码构建项目需要 aws_codebuild_source_credential
我有很多正在使用的代码构建项目,它们依赖于 aws_codebuild_source_credential
来创建。
对我来说,问题是一些项目被指定在不同的文件夹中,并且一个帐户的代码构建只有一个源凭据。
这意味着,如果我随后删除创建了 aws_codebuild_source_credential
的“堆栈”以便能够创建代码构建项目,那么从那时起所有代码构建的身份验证令牌都会被删除。
我似乎找不到 aws_codebuild_source_credential
的数据提供者,因此我正在寻找一种方法来引用已在别处创建的数据提供者。
创建代码构建项目时需要提供 oAuth 令牌:
auth {
type = "OAUTH"
resource = aws_codebuild_source_credential.github.arn
}
问题是我如何共享单个 aws_codebuild_source_credential
以便我可以将其传递到单独的代码构建项目中,我是否应该对任何文件夹运行销毁令牌?
解决方法
归结为你想如何组织你的 terraform 代码,我会做的是
-
将
aws_codebuild_source_credential
资源与aws_ssm_parameter
资源一起移动到单独的存储库中(甚至可能将 create 作为模块)。 -
首先供应这些资源(预播种),当您供应
aws_codebuild_source_credential
存储时,它在arn
中以已知名称aws_ssm_parameter
。 -
下次配置新的代码构建项目时,通过相应的数据资源 ssm_parameter
从 SSM 检索源凭证 arn
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。