Fas*_*ous 3 terraform terraform-provider-aws
我正在使用 Terraform 云。我希望将 AWS 标签与我的资源结合使用。我想用当前的 GIT 分支名称标记 Terraform 中定义的每个资源。这样我就可以将开发与生产分开。
Terraform 有一个环境变量列表,它们确实引用了 GIT 分支名称及其在云中的服务:
TFC_CONFIGURATION_VERSION_GIT_BRANCH - This is the name of the branch that the associated Terraform configuration version was ingressed from (e.g. master).
Run Code Online (Sandbox Code Playgroud)
如何在示例 VPC 的以下资源中引用TFC_CONFIGURATION_VERSION_GIT_BRANCH环境变量?
resource "aws_vpc" "example_vpc" {
cidr_block = "10.0.0.0/16"
tags = {
product = var.product
stage = var.TFC_CONFIGURATION_VERSION_GIT_BRANCH
}
}
Run Code Online (Sandbox Code Playgroud)
参考:https://www.terraform.io/docs/language/values/variables.html#environment-variables
Fas*_*ous 14
我想到了!希望有关云的文档更加清晰。
您必须设置一个空变量。我在 Variables.tf 中将我的定义为:
variable "TFC_CONFIGURATION_VERSION_GIT_BRANCH" {
type = string
default = ""
}
Run Code Online (Sandbox Code Playgroud)
根据我链接的相关文档。每次云运行时, TFC_CONFIGURATION_VERSION_GIT_BRANCH都会自动注入到环境变量中。定义环境变量的全名作为变量的工作。
resource "aws_vpc" "example_vpc" {
cidr_block = "10.0.0.0/16"
tags = {
product = var.product
stage = var.TFC_CONFIGURATION_VERSION_GIT_BRANCH
}
}
Run Code Online (Sandbox Code Playgroud)
然后云端的计划输出成功:
Terraform will perform the following actions:
# aws_vpc.example_vpc will be updated in-place
~ resource "aws_vpc" "example_vpc" {
id = "vpc-0b19679e6464b8481"
~ tags = {
~ "stage" = "None" -> "develop"
# (1 unchanged element hidden)
}
# (14 unchanged attributes hidden)
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10107 次 |
最近记录: |