Accessing Terraform variables within user_data provider template file

后端 未结 2 1051
说谎
说谎 2021-01-01 22:51

I am launching a aws_launch_configuration instance using terraform.

I\'m using a shell script for the user_data variable, like so:

2条回答
  •  忘掉有多难
    2021-01-01 23:34

    You can do this using a template_file data source:

    data "template_file" "init" {
      template = "${file("router-init.sh.tpl")}"
    
      vars = {
        some_address = "${aws_instance.some.private_ip}"
      }
    }
    

    Then reference it inside the template like:

    #!/bin/bash
    
    echo "SOME_ADDRESS = ${some_address}" > /tmp/
    

    Then use that for the user_data:

     user_data = ${data.template_file.init.rendered}
    

提交回复
热议问题