mirror of
https://github.com/apricote/home-cloud.git
synced 2026-01-13 13:01:03 +00:00
37 lines
912 B
HCL
Executable file
37 lines
912 B
HCL
Executable file
resource hcloud_server control {
|
|
count = 3
|
|
name = "control${count.index}"
|
|
image = "ubuntu-18.04"
|
|
server_type = "cx21"
|
|
}
|
|
|
|
resource hcloud_server compute {
|
|
count = 3
|
|
name = "compute${count.index}"
|
|
image = "ubuntu-18.04"
|
|
server_type = "cx21"
|
|
}
|
|
|
|
data "template_file" "ansible_inventory" {
|
|
template = "${file("${path.module}/templates/ansible_inventory.cfg")}"
|
|
|
|
depends_on = [
|
|
"hcloud_server.control",
|
|
"hcloud_server.compute",
|
|
]
|
|
|
|
vars {
|
|
control = "${join("\n", hcloud_server.control.*.ipv4_address)}"
|
|
compute = "${join("\n", hcloud_server.compute.*.ipv4_address)}"
|
|
}
|
|
}
|
|
|
|
resource "null_resource" "ansible_inventory" {
|
|
triggers {
|
|
template_rendered = "${data.template_file.ansible_inventory.rendered}"
|
|
}
|
|
|
|
provisioner "local-exec" {
|
|
command = "echo '${data.template_file.ansible_inventory.rendered}' > ansible_inventory"
|
|
}
|
|
}
|