我是terraform的新手 .
有什么方法可以将terraform模板输出用于另一个terraform模板输入吗?例如:我有一个创建elb的terraform模板,我有另一组terraform模板,它将创建需要elb信息作为输入变量的自动缩放组 . 我知道我可以使用shell脚本grep并输入elb信息 . 但我正在寻找一些实现这一目标的方式 .
谢谢
您是否尝试过使用远程状态来填充第二个模板?
声明如下:
resource "terraform_remote_state" "your_state" { backend = "s3" config { bucket = "${var.your_bucket}" region = "${var.your_region}" key = "${var.your_state_file}" } }
然后你应该能够像这样直接提取你的资源:
your_elb = "${terraform_remote_state.your_state.output.your_output_resource}"
如果这对您不起作用,您是否尝试在模块中实现ELB然后只使用输出?
https://github.com/terraform-community-modules/tf_aws_elb是如何构建模块的一个很好的例子 .
看起来像更新版本的terraform你会像这样访问输出var
your_elb = "${data.terraform_remote_state.your_state.your_output_resource}"
其余的都是一样的,就是你如何引用它 .
2 回答
您是否尝试过使用远程状态来填充第二个模板?
声明如下:
然后你应该能够像这样直接提取你的资源:
如果这对您不起作用,您是否尝试在模块中实现ELB然后只使用输出?
https://github.com/terraform-community-modules/tf_aws_elb是如何构建模块的一个很好的例子 .
看起来像更新版本的terraform你会像这样访问输出var
其余的都是一样的,就是你如何引用它 .