github.com/heimweh/terraform@v0.7.4/examples/consul/main.tf (about) 1 # Setup the Consul provisioner to use the demo cluster 2 provider "consul" { 3 address = "demo.consul.io:80" 4 datacenter = "nyc1" 5 } 6 7 # Setup an AWS provider 8 provider "aws" { 9 region = "${var.aws_region}" 10 } 11 12 # Setup a key in Consul to provide inputs 13 resource "consul_keys" "input" { 14 key { 15 name = "size" 16 path = "tf_test/size" 17 default = "m1.small" 18 } 19 } 20 21 # Setup a new AWS instance using a dynamic ami and 22 # instance type 23 resource "aws_instance" "test" { 24 ami = "${lookup(var.aws_amis, var.aws_region)}" 25 instance_type = "${consul_keys.input.var.size}" 26 } 27 28 # Setup a key in Consul to store the instance id and 29 # the DNS name of the instance 30 resource "consul_keys" "test" { 31 key { 32 name = "id" 33 path = "tf_test/id" 34 value = "${aws_instance.test.id}" 35 delete = true 36 } 37 key { 38 name = "address" 39 path = "tf_test/public_dns" 40 value = "${aws_instance.test.public_dns}" 41 delete = true 42 } 43 }