Terraform - 多个 AWS codebuild 项目需要 aws_codebuild_source_credential
Terraform - Multiple AWS codebuild projects require aws_codebuild_source_credential
我有很多正在使用的代码构建项目,它们依赖于 aws_codebuild_source_credential
来创建。
我的问题是有些项目是在不同的文件夹中指定的,并且一个帐户的代码构建只有一个源凭据。
这意味着,如果我随后删除了一个 'stack',它创建了一个 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
资源一起移动到单独的存储库中(甚至可能创建为模块)。
首先配置这些资源(预播种),当您配置 aws_codebuild_source_credential
存储时,它在 aws_ssm_parameter
中以已知名称存储在 arn
中。
下次您提供新的代码构建项目时,通过相应的数据资源从 SSM 检索源凭证 arn ssm_parameter
我有很多正在使用的代码构建项目,它们依赖于 aws_codebuild_source_credential
来创建。
我的问题是有些项目是在不同的文件夹中指定的,并且一个帐户的代码构建只有一个源凭据。
这意味着,如果我随后删除了一个 'stack',它创建了一个 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
资源一起移动到单独的存储库中(甚至可能创建为模块)。首先配置这些资源(预播种),当您配置
aws_codebuild_source_credential
存储时,它在aws_ssm_parameter
中以已知名称存储在arn
中。下次您提供新的代码构建项目时,通过相应的数据资源从 SSM 检索源凭证 arn ssm_parameter