1

如何从 Terraform 启动 CloudFormationTemplate。Terraform 创建了 VPC 和 SecurityGroups。如何将 vpcID 和 SecurityGroupID 传入 CFT。我已经搜索但找不到任何相同的链接。RTFM 在这里没有任何帮助。

4

1 回答 1

1

为此,您应该将参数传递给aws_cloudformation_stack资源。

resource "template_file" "redshift_cloudformation" {
  template = "${file("redshift.cloudformation")}"

  vars {
    redshift_public_subnet_id  = "${element(split(",", terraform_remote_state.shared.output.public_subnet_ids), 0)}"
    redshift_security_group_id = "${aws_security_group.redshift.id}"
  }
}

resource "aws_cloudformation_stack" "heavy_redshift" {
  name          = "heavy-redshift"
  template_body = "${template_file.redshift_cloudformation.rendered}"

  parameters {
    MasterUsername     = "master"
    MasterUserPassword = "MasterPassword123"
  }
}

检查完整代码以获取更多示例 - https://github.com/antonbabenko/terraform-aws-devops/blob/master/extra/heavy_cf_redshift.tf#L40-L48

于 2015-12-22T15:34:01.153 回答