地形。从 AWS 参数存储中获取值
Terraform. Get value from AWS parameter store
无法理解如何从参数存储中获取值并将其传递给 terraform 变量。
我有一个名称为“github_token”且类型为“string”的参数。并且在地形代码中有一个变量
variable "github_oauth_token" {
default=""
}
我试图用下一段代码接收参数值,但它不正确。
data "aws_ssm_parameter" "github_token" {
name = "github_token"
type = "string"
value = var.github_oauth_token
}
使用 data
源时,您并不是在创建新值,您只是在读取现有值。因此,在此上下文中指定“值”和“类型”没有意义,因为参数的值和类型已经存在。如果您查看 the data source aws_ssm_parameter documentation,您会发现唯一需要的是 name
值。
假设:
- 运行 Terraform 的用户有权访问 SSM(参数存储)
- 在路径
github_token
的参数存储中存储了一个值
- 该值未加密
这应该适合你:
variable "github_oauth_token" {
default = "github_token"
}
data "aws_ssm_parameter" "github_token" {
name = var.github_oauth_token
}
然后使用参数存储项的值:
data.aws_ssm_parameter.github_token.value
无法理解如何从参数存储中获取值并将其传递给 terraform 变量。 我有一个名称为“github_token”且类型为“string”的参数。并且在地形代码中有一个变量
variable "github_oauth_token" {
default=""
}
我试图用下一段代码接收参数值,但它不正确。
data "aws_ssm_parameter" "github_token" {
name = "github_token"
type = "string"
value = var.github_oauth_token
}
使用 data
源时,您并不是在创建新值,您只是在读取现有值。因此,在此上下文中指定“值”和“类型”没有意义,因为参数的值和类型已经存在。如果您查看 the data source aws_ssm_parameter documentation,您会发现唯一需要的是 name
值。
假设:
- 运行 Terraform 的用户有权访问 SSM(参数存储)
- 在路径
github_token
的参数存储中存储了一个值
- 该值未加密
这应该适合你:
variable "github_oauth_token" {
default = "github_token"
}
data "aws_ssm_parameter" "github_token" {
name = var.github_oauth_token
}
然后使用参数存储项的值:
data.aws_ssm_parameter.github_token.value