Terraform - 如何输出输入变量?
Terraform - How to output input variable?
我有一个创建 AWS EC2 实例的自定义 terraform 模块,因此它依赖于 aws 提供商。
这个 terraform 自定义模块用作描述我要创建的实例的基础,但我还需要一些其他信息,稍后将重复使用。
例如,我想将对 VM 的描述定义为输入变量,但我根本不需要使用它来使用 aws 提供商创建我的 vm。
我只想将此输入变量直接作为输出发送,以便在 terraform 完成其工作后可以稍后重新使用它。
前
我有什么作为输入变量
variable "description" {
type = string
description = "Description of the instance"
}
我想把什么作为输出变量
output "description" {
value = module.ec2_instance.description
}
我的主模块在做什么
module "ec2_instance" {
source = "./modules/aws_ec2"
ami_id = var.ami_id
instance_name = var.hostname
disk_size = var.disk_size
create_disk = var.create_disk
availability_zone = var.availability_zone
disk_type = var.disk_type
// I don't need the description variable for the module to work, and I don't wanna do anything with it here, i need it later as output
}
我觉得自己很愚蠢,因为我在网上搜索了答案,但找不到任何答案。
你能帮忙吗?
谢谢
编辑:添加了代码示例
如果您有这样声明的输入变量:
variable "description" {
type = string
}
...然后你可以 return 它的值作为这样的输出值,在你声明它的同一个模块中:
output "description" {
value = var.description
}
我有一个创建 AWS EC2 实例的自定义 terraform 模块,因此它依赖于 aws 提供商。 这个 terraform 自定义模块用作描述我要创建的实例的基础,但我还需要一些其他信息,稍后将重复使用。
例如,我想将对 VM 的描述定义为输入变量,但我根本不需要使用它来使用 aws 提供商创建我的 vm。
我只想将此输入变量直接作为输出发送,以便在 terraform 完成其工作后可以稍后重新使用它。
前 我有什么作为输入变量
variable "description" {
type = string
description = "Description of the instance"
}
我想把什么作为输出变量
output "description" {
value = module.ec2_instance.description
}
我的主模块在做什么
module "ec2_instance" {
source = "./modules/aws_ec2"
ami_id = var.ami_id
instance_name = var.hostname
disk_size = var.disk_size
create_disk = var.create_disk
availability_zone = var.availability_zone
disk_type = var.disk_type
// I don't need the description variable for the module to work, and I don't wanna do anything with it here, i need it later as output
}
我觉得自己很愚蠢,因为我在网上搜索了答案,但找不到任何答案。 你能帮忙吗?
谢谢
编辑:添加了代码示例
如果您有这样声明的输入变量:
variable "description" {
type = string
}
...然后你可以 return 它的值作为这样的输出值,在你声明它的同一个模块中:
output "description" {
value = var.description
}