From 50db3d0231775ddfbfbeec783ff7818dc82a978f Mon Sep 17 00:00:00 2001 From: Dalton Hubble Date: Sat, 28 Dec 2019 12:07:10 -0800 Subject: [PATCH] Rename CLC files and favor Terraform list index syntax * Rename Container Linux Config (CLC) files to *.yaml to align with Fedora CoreOS Config (FCC) files and for syntax highlighting * Replace common uses of Terraform `element` (which wraps around) with `list[index]` syntax to surface index errors --- aws/container-linux/kubernetes/ami.tf | 4 ++-- .../{controller.yaml.tmpl => controller.yaml} | 0 aws/container-linux/kubernetes/controllers.tf | 15 +++++-------- aws/container-linux/kubernetes/network.tf | 2 +- aws/container-linux/kubernetes/nlb.tf | 2 +- aws/container-linux/kubernetes/ssh.tf | 2 +- aws/container-linux/kubernetes/workers/ami.tf | 4 ++-- .../cl/{worker.yaml.tmpl => worker.yaml} | 0 .../kubernetes/workers/workers.tf | 2 +- aws/fedora-coreos/kubernetes/ssh.tf | 4 ++-- aws/ignore/.gitkeep | 0 .../{controller.yaml.tmpl => controller.yaml} | 0 .../container-linux/kubernetes/controllers.tf | 22 +++++++------------ azure/container-linux/kubernetes/ssh.tf | 6 ++--- .../cl/{worker.yaml.tmpl => worker.yaml} | 0 .../kubernetes/workers/workers.tf | 4 ++-- .../{controller.yaml.tmpl => controller.yaml} | 0 .../cl/{install.yaml.tmpl => install.yaml} | 0 .../cl/{worker.yaml.tmpl => worker.yaml} | 0 .../container-linux/kubernetes/profiles.tf | 8 +++---- bare-metal/container-linux/kubernetes/ssh.tf | 2 +- bare-metal/fedora-coreos/kubernetes/ssh.tf | 2 +- bare-metal/ignore/.gitkeep | 0 .../{controller.yaml.tmpl => controller.yaml} | 0 .../cl/{worker.yaml.tmpl => worker.yaml} | 0 .../container-linux/kubernetes/controllers.tf | 10 ++++----- .../container-linux/kubernetes/ssh.tf | 2 +- .../container-linux/kubernetes/workers.tf | 6 ++--- .../{controller.yaml.tmpl => controller.yaml} | 0 .../container-linux/kubernetes/controllers.tf | 16 ++++++-------- .../container-linux/kubernetes/ssh.tf | 4 ++-- .../cl/{worker.yaml.tmpl => worker.yaml} | 0 .../kubernetes/workers/workers.tf | 2 +- 33 files changed, 54 insertions(+), 65 deletions(-) rename aws/container-linux/kubernetes/cl/{controller.yaml.tmpl => controller.yaml} (100%) rename aws/container-linux/kubernetes/workers/cl/{worker.yaml.tmpl => worker.yaml} (100%) delete mode 100644 aws/ignore/.gitkeep rename azure/container-linux/kubernetes/cl/{controller.yaml.tmpl => controller.yaml} (100%) rename azure/container-linux/kubernetes/workers/cl/{worker.yaml.tmpl => worker.yaml} (100%) rename bare-metal/container-linux/kubernetes/cl/{controller.yaml.tmpl => controller.yaml} (100%) rename bare-metal/container-linux/kubernetes/cl/{install.yaml.tmpl => install.yaml} (100%) rename bare-metal/container-linux/kubernetes/cl/{worker.yaml.tmpl => worker.yaml} (100%) delete mode 100644 bare-metal/ignore/.gitkeep rename digital-ocean/container-linux/kubernetes/cl/{controller.yaml.tmpl => controller.yaml} (100%) rename digital-ocean/container-linux/kubernetes/cl/{worker.yaml.tmpl => worker.yaml} (100%) rename google-cloud/container-linux/kubernetes/cl/{controller.yaml.tmpl => controller.yaml} (100%) rename google-cloud/container-linux/kubernetes/workers/cl/{worker.yaml.tmpl => worker.yaml} (100%) diff --git a/aws/container-linux/kubernetes/ami.tf b/aws/container-linux/kubernetes/ami.tf index b5124b4b..bea85504 100644 --- a/aws/container-linux/kubernetes/ami.tf +++ b/aws/container-linux/kubernetes/ami.tf @@ -4,8 +4,8 @@ locals { # flatcar-stable -> Flatcar Linux AMI ami_id = local.flavor == "flatcar" ? data.aws_ami.flatcar.image_id : data.aws_ami.coreos.image_id - flavor = element(split("-", var.os_image), 0) - channel = element(split("-", var.os_image), 1) + flavor = split("-", var.os_image)[0] + channel = split("-", var.os_image)[1] } data "aws_ami" "coreos" { diff --git a/aws/container-linux/kubernetes/cl/controller.yaml.tmpl b/aws/container-linux/kubernetes/cl/controller.yaml similarity index 100% rename from aws/container-linux/kubernetes/cl/controller.yaml.tmpl rename to aws/container-linux/kubernetes/cl/controller.yaml diff --git a/aws/container-linux/kubernetes/controllers.tf b/aws/container-linux/kubernetes/controllers.tf index 28267945..76e22b17 100644 --- a/aws/container-linux/kubernetes/controllers.tf +++ b/aws/container-linux/kubernetes/controllers.tf @@ -10,7 +10,7 @@ resource "aws_route53_record" "etcds" { ttl = 300 # private IPv4 address for etcd - records = [element(aws_instance.controllers.*.private_ip, count.index)] + records = [aws_instance.controllers.*.private_ip[count.index]] } # Controller instances @@ -24,7 +24,7 @@ resource "aws_instance" "controllers" { instance_type = var.controller_type ami = local.ami_id - user_data = element(data.ct_config.controller-ignitions.*.rendered, count.index) + user_data = data.ct_config.controller-ignitions.*.rendered[count.index] # storage root_block_device { @@ -36,7 +36,7 @@ resource "aws_instance" "controllers" { # network associate_public_ip_address = true - subnet_id = element(aws_subnet.public.*.id, count.index) + subnet_id = aws_subnet.public.*.id[count.index] vpc_security_group_ids = [aws_security_group.controller.id] lifecycle { @@ -49,11 +49,8 @@ resource "aws_instance" "controllers" { # Controller Ignition configs data "ct_config" "controller-ignitions" { - count = var.controller_count - content = element( - data.template_file.controller-configs.*.rendered, - count.index, - ) + count = var.controller_count + content = data.template_file.controller-configs.*.rendered[count.index] pretty_print = false snippets = var.controller_clc_snippets } @@ -62,7 +59,7 @@ data "ct_config" "controller-ignitions" { data "template_file" "controller-configs" { count = var.controller_count - template = file("${path.module}/cl/controller.yaml.tmpl") + template = file("${path.module}/cl/controller.yaml") vars = { # Cannot use cyclic dependencies on controllers or their DNS records diff --git a/aws/container-linux/kubernetes/network.tf b/aws/container-linux/kubernetes/network.tf index ae159ba5..a93b3f0c 100644 --- a/aws/container-linux/kubernetes/network.tf +++ b/aws/container-linux/kubernetes/network.tf @@ -62,6 +62,6 @@ resource "aws_route_table_association" "public" { count = length(data.aws_availability_zones.all.names) route_table_id = aws_route_table.default.id - subnet_id = element(aws_subnet.public.*.id, count.index) + subnet_id = aws_subnet.public.*.id[count.index] } diff --git a/aws/container-linux/kubernetes/nlb.tf b/aws/container-linux/kubernetes/nlb.tf index 08458a97..2b87366a 100644 --- a/aws/container-linux/kubernetes/nlb.tf +++ b/aws/container-linux/kubernetes/nlb.tf @@ -88,7 +88,7 @@ resource "aws_lb_target_group_attachment" "controllers" { count = var.controller_count target_group_arn = aws_lb_target_group.controllers.arn - target_id = element(aws_instance.controllers.*.id, count.index) + target_id = aws_instance.controllers.*.id[count.index] port = 6443 } diff --git a/aws/container-linux/kubernetes/ssh.tf b/aws/container-linux/kubernetes/ssh.tf index f180f312..b6396d02 100644 --- a/aws/container-linux/kubernetes/ssh.tf +++ b/aws/container-linux/kubernetes/ssh.tf @@ -2,7 +2,7 @@ locals { # format assets for distribution assets_bundle = [ # header with the unpack location - for key, value in module.bootstrap.assets_dist: + for key, value in module.bootstrap.assets_dist : format("##### %s\n%s", key, value) ] } diff --git a/aws/container-linux/kubernetes/workers/ami.tf b/aws/container-linux/kubernetes/workers/ami.tf index b5124b4b..bea85504 100644 --- a/aws/container-linux/kubernetes/workers/ami.tf +++ b/aws/container-linux/kubernetes/workers/ami.tf @@ -4,8 +4,8 @@ locals { # flatcar-stable -> Flatcar Linux AMI ami_id = local.flavor == "flatcar" ? data.aws_ami.flatcar.image_id : data.aws_ami.coreos.image_id - flavor = element(split("-", var.os_image), 0) - channel = element(split("-", var.os_image), 1) + flavor = split("-", var.os_image)[0] + channel = split("-", var.os_image)[1] } data "aws_ami" "coreos" { diff --git a/aws/container-linux/kubernetes/workers/cl/worker.yaml.tmpl b/aws/container-linux/kubernetes/workers/cl/worker.yaml similarity index 100% rename from aws/container-linux/kubernetes/workers/cl/worker.yaml.tmpl rename to aws/container-linux/kubernetes/workers/cl/worker.yaml diff --git a/aws/container-linux/kubernetes/workers/workers.tf b/aws/container-linux/kubernetes/workers/workers.tf index 09375ac7..de0e07aa 100644 --- a/aws/container-linux/kubernetes/workers/workers.tf +++ b/aws/container-linux/kubernetes/workers/workers.tf @@ -78,7 +78,7 @@ data "ct_config" "worker-ignition" { # Worker Container Linux config data "template_file" "worker-config" { - template = file("${path.module}/cl/worker.yaml.tmpl") + template = file("${path.module}/cl/worker.yaml") vars = { kubeconfig = indent(10, var.kubeconfig) diff --git a/aws/fedora-coreos/kubernetes/ssh.tf b/aws/fedora-coreos/kubernetes/ssh.tf index f11ae0b2..b6396d02 100644 --- a/aws/fedora-coreos/kubernetes/ssh.tf +++ b/aws/fedora-coreos/kubernetes/ssh.tf @@ -2,7 +2,7 @@ locals { # format assets for distribution assets_bundle = [ # header with the unpack location - for key, value in module.bootstrap.assets_dist: + for key, value in module.bootstrap.assets_dist : format("##### %s\n%s", key, value) ] } @@ -21,7 +21,7 @@ resource "null_resource" "copy-controller-secrets" { user = "core" timeout = "15m" } - + provisioner "file" { content = join("\n", local.assets_bundle) destination = "$HOME/assets" diff --git a/aws/ignore/.gitkeep b/aws/ignore/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/azure/container-linux/kubernetes/cl/controller.yaml.tmpl b/azure/container-linux/kubernetes/cl/controller.yaml similarity index 100% rename from azure/container-linux/kubernetes/cl/controller.yaml.tmpl rename to azure/container-linux/kubernetes/cl/controller.yaml diff --git a/azure/container-linux/kubernetes/controllers.tf b/azure/container-linux/kubernetes/controllers.tf index 36518d18..6012ad33 100644 --- a/azure/container-linux/kubernetes/controllers.tf +++ b/azure/container-linux/kubernetes/controllers.tf @@ -11,16 +11,13 @@ resource "azurerm_dns_a_record" "etcds" { ttl = 300 # private IPv4 address for etcd - records = [element( - azurerm_network_interface.controllers.*.private_ip_address, - count.index, - )] + records = [azurerm_network_interface.controllers.*.private_ip_address[count.index]] } locals { # Channel for a Container Linux derivative # coreos-stable -> Container Linux Stable - channel = element(split("-", var.os_image), 1) + channel = split("-", var.os_image)[1] } # Controller availability set to spread controllers @@ -63,12 +60,12 @@ resource "azurerm_virtual_machine" "controllers" { } # network - network_interface_ids = [element(azurerm_network_interface.controllers.*.id, count.index)] + network_interface_ids = [azurerm_network_interface.controllers.*.id[count.index]] os_profile { computer_name = "${var.cluster_name}-controller-${count.index}" admin_username = "core" - custom_data = element(data.ct_config.controller-ignitions.*.rendered, count.index) + custom_data = data.ct_config.controller-ignitions.*.rendered[count.index] } # Azure mandates setting an ssh_key, even though Ignition custom_data handles it too @@ -108,7 +105,7 @@ resource "azurerm_network_interface" "controllers" { private_ip_address_allocation = "dynamic" # public IPv4 - public_ip_address_id = element(azurerm_public_ip.controllers.*.id, count.index) + public_ip_address_id = azurerm_public_ip.controllers.*.id[count.index] } } @@ -134,11 +131,8 @@ resource "azurerm_public_ip" "controllers" { # Controller Ignition configs data "ct_config" "controller-ignitions" { - count = var.controller_count - content = element( - data.template_file.controller-configs.*.rendered, - count.index, - ) + count = var.controller_count + content = data.template_file.controller-configs.*.rendered[count.index] pretty_print = false snippets = var.controller_clc_snippets } @@ -147,7 +141,7 @@ data "ct_config" "controller-ignitions" { data "template_file" "controller-configs" { count = var.controller_count - template = file("${path.module}/cl/controller.yaml.tmpl") + template = file("${path.module}/cl/controller.yaml") vars = { # Cannot use cyclic dependencies on controllers or their DNS records diff --git a/azure/container-linux/kubernetes/ssh.tf b/azure/container-linux/kubernetes/ssh.tf index f93e096d..5ff47b35 100644 --- a/azure/container-linux/kubernetes/ssh.tf +++ b/azure/container-linux/kubernetes/ssh.tf @@ -2,7 +2,7 @@ locals { # format assets for distribution assets_bundle = [ # header with the unpack location - for key, value in module.bootstrap.assets_dist: + for key, value in module.bootstrap.assets_dist : format("##### %s\n%s", key, value) ] } @@ -22,7 +22,7 @@ resource "null_resource" "copy-controller-secrets" { user = "core" timeout = "15m" } - + provisioner "file" { content = join("\n", local.assets_bundle) destination = "$HOME/assets" @@ -45,7 +45,7 @@ resource "null_resource" "bootstrap" { connection { type = "ssh" - host = element(azurerm_public_ip.controllers.*.ip_address, 0) + host = azurerm_public_ip.controllers.*.ip_address[0] user = "core" timeout = "15m" } diff --git a/azure/container-linux/kubernetes/workers/cl/worker.yaml.tmpl b/azure/container-linux/kubernetes/workers/cl/worker.yaml similarity index 100% rename from azure/container-linux/kubernetes/workers/cl/worker.yaml.tmpl rename to azure/container-linux/kubernetes/workers/cl/worker.yaml diff --git a/azure/container-linux/kubernetes/workers/workers.tf b/azure/container-linux/kubernetes/workers/workers.tf index 82be439d..7acdf63e 100644 --- a/azure/container-linux/kubernetes/workers/workers.tf +++ b/azure/container-linux/kubernetes/workers/workers.tf @@ -1,7 +1,7 @@ locals { # Channel for a Container Linux derivative # coreos-stable -> Container Linux Stable - channel = element(split("-", var.os_image), 1) + channel = split("-", var.os_image)[1] } # Workers scale set @@ -104,7 +104,7 @@ data "ct_config" "worker-ignition" { # Worker Container Linux configs data "template_file" "worker-config" { - template = file("${path.module}/cl/worker.yaml.tmpl") + template = file("${path.module}/cl/worker.yaml") vars = { kubeconfig = indent(10, var.kubeconfig) diff --git a/bare-metal/container-linux/kubernetes/cl/controller.yaml.tmpl b/bare-metal/container-linux/kubernetes/cl/controller.yaml similarity index 100% rename from bare-metal/container-linux/kubernetes/cl/controller.yaml.tmpl rename to bare-metal/container-linux/kubernetes/cl/controller.yaml diff --git a/bare-metal/container-linux/kubernetes/cl/install.yaml.tmpl b/bare-metal/container-linux/kubernetes/cl/install.yaml similarity index 100% rename from bare-metal/container-linux/kubernetes/cl/install.yaml.tmpl rename to bare-metal/container-linux/kubernetes/cl/install.yaml diff --git a/bare-metal/container-linux/kubernetes/cl/worker.yaml.tmpl b/bare-metal/container-linux/kubernetes/cl/worker.yaml similarity index 100% rename from bare-metal/container-linux/kubernetes/cl/worker.yaml.tmpl rename to bare-metal/container-linux/kubernetes/cl/worker.yaml diff --git a/bare-metal/container-linux/kubernetes/profiles.tf b/bare-metal/container-linux/kubernetes/profiles.tf index 007fc2c4..6bbaa1d5 100644 --- a/bare-metal/container-linux/kubernetes/profiles.tf +++ b/bare-metal/container-linux/kubernetes/profiles.tf @@ -31,7 +31,7 @@ resource "matchbox_profile" "container-linux-install" { data "template_file" "container-linux-install-configs" { count = length(var.controllers) + length(var.workers) - template = file("${path.module}/cl/install.yaml.tmpl") + template = file("${path.module}/cl/install.yaml") vars = { os_flavor = local.flavor @@ -72,7 +72,7 @@ resource "matchbox_profile" "cached-container-linux-install" { data "template_file" "cached-container-linux-install-configs" { count = length(var.controllers) + length(var.workers) - template = file("${path.module}/cl/install.yaml.tmpl") + template = file("${path.module}/cl/install.yaml") vars = { os_flavor = local.flavor @@ -150,7 +150,7 @@ data "ct_config" "controller-ignitions" { data "template_file" "controller-configs" { count = length(var.controllers) - template = file("${path.module}/cl/controller.yaml.tmpl") + template = file("${path.module}/cl/controller.yaml") vars = { domain_name = var.controllers.*.domain[count.index] @@ -180,7 +180,7 @@ data "ct_config" "worker-ignitions" { data "template_file" "worker-configs" { count = length(var.workers) - template = file("${path.module}/cl/worker.yaml.tmpl") + template = file("${path.module}/cl/worker.yaml") vars = { domain_name = var.workers.*.domain[count.index] diff --git a/bare-metal/container-linux/kubernetes/ssh.tf b/bare-metal/container-linux/kubernetes/ssh.tf index fcab4735..ab91deaf 100644 --- a/bare-metal/container-linux/kubernetes/ssh.tf +++ b/bare-metal/container-linux/kubernetes/ssh.tf @@ -2,7 +2,7 @@ locals { # format assets for distribution assets_bundle = [ # header with the unpack location - for key, value in module.bootstrap.assets_dist: + for key, value in module.bootstrap.assets_dist : format("##### %s\n%s", key, value) ] } diff --git a/bare-metal/fedora-coreos/kubernetes/ssh.tf b/bare-metal/fedora-coreos/kubernetes/ssh.tf index 560d96fe..092794fd 100644 --- a/bare-metal/fedora-coreos/kubernetes/ssh.tf +++ b/bare-metal/fedora-coreos/kubernetes/ssh.tf @@ -2,7 +2,7 @@ locals { # format assets for distribution assets_bundle = [ # header with the unpack location - for key, value in module.bootstrap.assets_dist: + for key, value in module.bootstrap.assets_dist : format("##### %s\n%s", key, value) ] } diff --git a/bare-metal/ignore/.gitkeep b/bare-metal/ignore/.gitkeep deleted file mode 100644 index e69de29b..00000000 diff --git a/digital-ocean/container-linux/kubernetes/cl/controller.yaml.tmpl b/digital-ocean/container-linux/kubernetes/cl/controller.yaml similarity index 100% rename from digital-ocean/container-linux/kubernetes/cl/controller.yaml.tmpl rename to digital-ocean/container-linux/kubernetes/cl/controller.yaml diff --git a/digital-ocean/container-linux/kubernetes/cl/worker.yaml.tmpl b/digital-ocean/container-linux/kubernetes/cl/worker.yaml similarity index 100% rename from digital-ocean/container-linux/kubernetes/cl/worker.yaml.tmpl rename to digital-ocean/container-linux/kubernetes/cl/worker.yaml diff --git a/digital-ocean/container-linux/kubernetes/controllers.tf b/digital-ocean/container-linux/kubernetes/controllers.tf index 58458b4b..f020e359 100644 --- a/digital-ocean/container-linux/kubernetes/controllers.tf +++ b/digital-ocean/container-linux/kubernetes/controllers.tf @@ -11,7 +11,7 @@ resource "digitalocean_record" "controllers" { ttl = 300 # IPv4 addresses of controllers - value = element(digitalocean_droplet.controllers.*.ipv4_address, count.index) + value = digitalocean_droplet.controllers.*.ipv4_address[count.index] } # Discrete DNS records for each controller's private IPv4 for etcd usage @@ -27,7 +27,7 @@ resource "digitalocean_record" "etcds" { ttl = 300 # private IPv4 address for etcd - value = element(digitalocean_droplet.controllers.*.ipv4_address_private, count.index) + value = digitalocean_droplet.controllers.*.ipv4_address_private[count.index] } # Controller droplet instances @@ -44,7 +44,7 @@ resource "digitalocean_droplet" "controllers" { ipv6 = true private_networking = true - user_data = element(data.ct_config.controller-ignitions.*.rendered, count.index) + user_data = data.ct_config.controller-ignitions.*.rendered[count.index] ssh_keys = var.ssh_fingerprints tags = [ @@ -64,7 +64,7 @@ resource "digitalocean_tag" "controllers" { # Controller Ignition configs data "ct_config" "controller-ignitions" { count = var.controller_count - content = element(data.template_file.controller-configs.*.rendered, count.index) + content = data.template_file.controller-configs.*.rendered[count.index] pretty_print = false snippets = var.controller_clc_snippets } @@ -73,7 +73,7 @@ data "ct_config" "controller-ignitions" { data "template_file" "controller-configs" { count = var.controller_count - template = file("${path.module}/cl/controller.yaml.tmpl") + template = file("${path.module}/cl/controller.yaml") vars = { # Cannot use cyclic dependencies on controllers or their DNS records diff --git a/digital-ocean/container-linux/kubernetes/ssh.tf b/digital-ocean/container-linux/kubernetes/ssh.tf index 469fc947..f4888fe0 100644 --- a/digital-ocean/container-linux/kubernetes/ssh.tf +++ b/digital-ocean/container-linux/kubernetes/ssh.tf @@ -2,7 +2,7 @@ locals { # format assets for distribution assets_bundle = [ # header with the unpack location - for key, value in module.bootstrap.assets_dist: + for key, value in module.bootstrap.assets_dist : format("##### %s\n%s", key, value) ] } diff --git a/digital-ocean/container-linux/kubernetes/workers.tf b/digital-ocean/container-linux/kubernetes/workers.tf index fb2fa02d..6a1c927f 100644 --- a/digital-ocean/container-linux/kubernetes/workers.tf +++ b/digital-ocean/container-linux/kubernetes/workers.tf @@ -8,7 +8,7 @@ resource "digitalocean_record" "workers-record-a" { name = "${var.cluster_name}-workers" type = "A" ttl = 300 - value = element(digitalocean_droplet.workers.*.ipv4_address, count.index) + value = digitalocean_droplet.workers.*.ipv4_address[count.index] } resource "digitalocean_record" "workers-record-aaaa" { @@ -20,7 +20,7 @@ resource "digitalocean_record" "workers-record-aaaa" { name = "${var.cluster_name}-workers" type = "AAAA" ttl = 300 - value = element(digitalocean_droplet.workers.*.ipv6_address, count.index) + value = digitalocean_droplet.workers.*.ipv6_address[count.index] } # Worker droplet instances @@ -63,7 +63,7 @@ data "ct_config" "worker-ignition" { # Worker Container Linux config data "template_file" "worker-config" { - template = file("${path.module}/cl/worker.yaml.tmpl") + template = file("${path.module}/cl/worker.yaml") vars = { cluster_dns_service_ip = cidrhost(var.service_cidr, 10) diff --git a/google-cloud/container-linux/kubernetes/cl/controller.yaml.tmpl b/google-cloud/container-linux/kubernetes/cl/controller.yaml similarity index 100% rename from google-cloud/container-linux/kubernetes/cl/controller.yaml.tmpl rename to google-cloud/container-linux/kubernetes/cl/controller.yaml diff --git a/google-cloud/container-linux/kubernetes/controllers.tf b/google-cloud/container-linux/kubernetes/controllers.tf index 893a324b..3669b173 100644 --- a/google-cloud/container-linux/kubernetes/controllers.tf +++ b/google-cloud/container-linux/kubernetes/controllers.tf @@ -11,7 +11,7 @@ resource "google_dns_record_set" "etcds" { ttl = 300 # private IPv4 address for etcd - rrdatas = [element(google_compute_instance.controllers.*.network_interface.0.network_ip, count.index)] + rrdatas = [google_compute_instance.controllers.*.network_interface.0.network_ip[count.index]] } # Zones in the region @@ -29,12 +29,13 @@ locals { resource "google_compute_instance" "controllers" { count = var.controller_count - name = "${var.cluster_name}-controller-${count.index}" + name = "${var.cluster_name}-controller-${count.index}" + # use a zone in the region and wrap around (e.g. controllers > zones) zone = element(local.zones, count.index) machine_type = var.controller_type metadata = { - user-data = element(data.ct_config.controller-ignitions.*.rendered, count.index) + user-data = data.ct_config.controller-ignitions.*.rendered[count.index] } boot_disk { @@ -64,11 +65,8 @@ resource "google_compute_instance" "controllers" { # Controller Ignition configs data "ct_config" "controller-ignitions" { - count = var.controller_count - content = element( - data.template_file.controller-configs.*.rendered, - count.index, - ) + count = var.controller_count + content = data.template_file.controller-configs.*.rendered[count.index] pretty_print = false snippets = var.controller_clc_snippets } @@ -77,7 +75,7 @@ data "ct_config" "controller-ignitions" { data "template_file" "controller-configs" { count = var.controller_count - template = file("${path.module}/cl/controller.yaml.tmpl") + template = file("${path.module}/cl/controller.yaml") vars = { # Cannot use cyclic dependencies on controllers or their DNS records diff --git a/google-cloud/container-linux/kubernetes/ssh.tf b/google-cloud/container-linux/kubernetes/ssh.tf index f6983447..6f80c558 100644 --- a/google-cloud/container-linux/kubernetes/ssh.tf +++ b/google-cloud/container-linux/kubernetes/ssh.tf @@ -2,7 +2,7 @@ locals { # format assets for distribution assets_bundle = [ # header with the unpack location - for key, value in module.bootstrap.assets_dist: + for key, value in module.bootstrap.assets_dist : format("##### %s\n%s", key, value) ] } @@ -21,7 +21,7 @@ resource "null_resource" "copy-controller-secrets" { user = "core" timeout = "15m" } - + provisioner "file" { content = join("\n", local.assets_bundle) destination = "$HOME/assets" diff --git a/google-cloud/container-linux/kubernetes/workers/cl/worker.yaml.tmpl b/google-cloud/container-linux/kubernetes/workers/cl/worker.yaml similarity index 100% rename from google-cloud/container-linux/kubernetes/workers/cl/worker.yaml.tmpl rename to google-cloud/container-linux/kubernetes/workers/cl/worker.yaml diff --git a/google-cloud/container-linux/kubernetes/workers/workers.tf b/google-cloud/container-linux/kubernetes/workers/workers.tf index 47d2cf17..c9f10948 100644 --- a/google-cloud/container-linux/kubernetes/workers/workers.tf +++ b/google-cloud/container-linux/kubernetes/workers/workers.tf @@ -78,7 +78,7 @@ data "ct_config" "worker-ignition" { # Worker Container Linux config data "template_file" "worker-config" { - template = file("${path.module}/cl/worker.yaml.tmpl") + template = file("${path.module}/cl/worker.yaml") vars = { kubeconfig = indent(10, var.kubeconfig)