stage #14
@ -1,68 +1,17 @@
|
|||||||
### Alpaca cloud-init template
|
### Global cloud-init template (for all VMs)
|
||||||
data "template_file" "cloud_init_alpaca" {
|
|
||||||
count = var.alpaca_vm_count
|
data "template_file" "cloud_init_global" {
|
||||||
template = file("${path.module}/files/cloud_init.yaml")
|
template = file("${path.module}/files/cloud_init_global.yaml")
|
||||||
|
|
||||||
vars = {
|
vars = {
|
||||||
hostname = "alpaca-${count.index + 1}"
|
hostname = "generic"
|
||||||
domain = "home.arpa"
|
domain = "home.arpa"
|
||||||
TS_AUTHKEY = var.TS_AUTHKEY
|
TS_AUTHKEY = var.TS_AUTHKEY
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
resource "local_file" "cloud_init_global" {
|
||||||
resource "local_file" "cloud_init_alpaca" {
|
content = data.template_file.cloud_init_global.rendered
|
||||||
count = var.alpaca_vm_count
|
filename = "${path.module}/files/cloud_init_global.yaml"
|
||||||
content = data.template_file.cloud_init_alpaca[count.index].rendered
|
|
||||||
filename = "${path.module}/files/cloud_init_alpaca_${count.index + 1}.yaml"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#resource "null_resource" "upload_cloud_init_alpaca" {
|
|
||||||
# count = var.alpaca_vm_count
|
|
||||||
#
|
|
||||||
# connection {
|
|
||||||
# type = "ssh"
|
|
||||||
# user = "root"
|
|
||||||
# host = var.target_node
|
|
||||||
# }
|
|
||||||
#
|
|
||||||
# provisioner "file" {
|
|
||||||
# source = local_file.cloud_init_alpaca[count.index].filename
|
|
||||||
# destination = "/var/lib/vz/snippets/cloud_init_alpaca_${count.index + 1}.yaml"
|
|
||||||
# }
|
|
||||||
#}
|
|
||||||
|
|
||||||
### Llama cloud-init template
|
|
||||||
data "template_file" "cloud_init_llama" {
|
|
||||||
count = var.llama_vm_count
|
|
||||||
template = file("${path.module}/files/cloud_init.yaml")
|
|
||||||
|
|
||||||
vars = {
|
|
||||||
hostname = "llama-${count.index + 1}"
|
|
||||||
domain = "home.arpa"
|
|
||||||
TS_AUTHKEY = var.TS_AUTHKEY
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
resource "local_file" "cloud_init_llama" {
|
|
||||||
count = var.llama_vm_count
|
|
||||||
content = data.template_file.cloud_init_llama[count.index].rendered
|
|
||||||
filename = "${path.module}/files/cloud_init_llama_${count.index + 1}.yaml"
|
|
||||||
}
|
|
||||||
|
|
||||||
#resource "null_resource" "upload_cloud_init_llama" {
|
|
||||||
# count = var.llama_vm_count
|
|
||||||
#
|
|
||||||
# connection {
|
|
||||||
# type = "ssh"
|
|
||||||
# user = "root"
|
|
||||||
# host = var.target_node
|
|
||||||
# }
|
|
||||||
#
|
|
||||||
# provisioner "file" {
|
|
||||||
# source = local_file.cloud_init_llama[count.index].filename
|
|
||||||
# destination = "/var/lib/vz/snippets/cloud_init_llama_${count.index + 1}.yaml"
|
|
||||||
# }
|
|
||||||
#}
|
|
||||||
|
|
||||||
|
@ -1,7 +1,4 @@
|
|||||||
#cloud-config
|
#cloud-config
|
||||||
hostname: ${hostname}
|
|
||||||
fqdn: ${hostname}.${domain}
|
|
||||||
|
|
||||||
runcmd:
|
runcmd:
|
||||||
- curl -fsSL https://tailscale.com/install.sh | sh
|
- curl -fsSL https://tailscale.com/install.sh | sh
|
||||||
- tailscale up --auth-key=${TS_AUTHKEY}
|
- tailscale up --auth-key=${TS_AUTHKEY}
|
||||||
|
9
terraform/files/cloud_init_global.yaml
Normal file
9
terraform/files/cloud_init_global.yaml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#cloud-config
|
||||||
|
hostname: ${hostname}
|
||||||
|
fqdn: ${hostname}.${domain}
|
||||||
|
|
||||||
|
runcmd:
|
||||||
|
- curl -fsSL https://tailscale.com/install.sh | sh
|
||||||
|
- tailscale up --auth-key=${TS_AUTHKEY}
|
||||||
|
- tailscale set --ssh
|
||||||
|
|
@ -29,7 +29,8 @@ resource "proxmox_vm_qemu" "alpacas" {
|
|||||||
scsihw = "virtio-scsi-pci"
|
scsihw = "virtio-scsi-pci"
|
||||||
boot = "order=scsi0"
|
boot = "order=scsi0"
|
||||||
ipconfig0 = "ip=dhcp"
|
ipconfig0 = "ip=dhcp"
|
||||||
cicustom = "user=local:snippets/cloud_init_alpaca_${count.index + 1}.yaml"
|
cicustom = "user=local:snippets/cloud_init_global.yaml"
|
||||||
|
|
||||||
|
|
||||||
disks {
|
disks {
|
||||||
scsi {
|
scsi {
|
||||||
@ -71,7 +72,7 @@ resource "proxmox_vm_qemu" "llamas" {
|
|||||||
scsihw = "virtio-scsi-pci"
|
scsihw = "virtio-scsi-pci"
|
||||||
boot = "order=scsi0"
|
boot = "order=scsi0"
|
||||||
ipconfig0 = "ip=dhcp"
|
ipconfig0 = "ip=dhcp"
|
||||||
cicustom = "user=local:snippets/cloud_init_llama_${count.index + 1}.yaml"
|
cicustom = "user=local:snippets/cloud_init_global.yaml"
|
||||||
|
|
||||||
disks {
|
disks {
|
||||||
scsi {
|
scsi {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user