Skip to content

Instantly share code, notes, and snippets.

@ryanwalder
Created March 12, 2018 15:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ryanwalder/acd4edd19dcdc1d652c38491f7f48233 to your computer and use it in GitHub Desktop.
Save ryanwalder/acd4edd19dcdc1d652c38491f7f48233 to your computer and use it in GitHub Desktop.
variable "consul_machine_name" { default = "mgtcfgconl" }
resource "vsphere_virtual_machine" "consul" {
count = "3"
name = "${format("%v%02d%v", var.consul_machine_name, count.index + 1, var.environment)}"
num_cpus = "2"
memory = "1024"
guest_id = "${var.guest_id}"
datastore_id = "${data.vsphere_datastore.datastore.id}"
resource_pool_id = "${data.vsphere_resource_pool.pool.id}"
folder = "${var.vm_folder}"
network_interface {
network_id = "${data.vsphere_network.cpt-mgt-cfg-con.id}"
adapter_type = "vmxnet3"
}
scsi_type = "${data.vsphere_virtual_machine.template.scsi_type}"
disk {
label = "disk0"
size = "8"
}
clone {
template_uuid = "${data.vsphere_virtual_machine.template.id}"
customize {
linux_options {
host_name = "${format("%v%02d%v", var.consul_machine_name, count.index + 1, var.environment)}"
domain = "${var.domain}"
time_zone = "${var.timezone}"
}
dns_server_list = "${var.dns_servers}"
dns_suffix_list = "${var.dns_search}"
network_interface {}
}
}
connection {
type = "ssh"
user = "${var.ssh_user}"
password = "${var.ssh_pass}"
}
provisioner "file" {
content = "${data.template_file.minion.rendered}"
destination = "/root/bootstrap.sh"
}
provisioner "remote-exec" {
inline = [
"chmod 744 /root/bootstrap.sh",
"/root/bootstrap.sh",
"rm -rf /root/bootstrap.sh"
]
}
depends_on = [
"vsphere_virtual_machine.saltmaster"
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment