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
}