add var 'worker_group_count' to replace 'length()' calls

This commit is contained in:
Andrew Lavery
2018-07-19 10:31:37 -07:00
parent 2814efcb8a
commit 5b1cf24931
3 changed files with 9 additions and 3 deletions

View File

@@ -75,7 +75,7 @@ EOF
data "template_file" "userdata" { data "template_file" "userdata" {
template = "${file("${path.module}/templates/userdata.sh.tpl")}" template = "${file("${path.module}/templates/userdata.sh.tpl")}"
count = "${length(var.worker_groups)}" count = "${var.worker_group_count}"
vars { vars {
region = "${data.aws_region.current.name}" region = "${data.aws_region.current.name}"

View File

@@ -74,6 +74,12 @@ variable "worker_groups" {
}] }]
} }
variable "worker_group_count" {
description = "The number of maps contained within the worker_groups list."
type = "string"
default = "1"
}
variable "workers_group_defaults" { variable "workers_group_defaults" {
description = "Default values for target groups as defined by the list of maps." description = "Default values for target groups as defined by the list of maps."
type = "map" type = "map"

View File

@@ -5,7 +5,7 @@ resource "aws_autoscaling_group" "workers" {
min_size = "${lookup(var.worker_groups[count.index], "asg_min_size",lookup(var.workers_group_defaults, "asg_min_size"))}" min_size = "${lookup(var.worker_groups[count.index], "asg_min_size",lookup(var.workers_group_defaults, "asg_min_size"))}"
launch_configuration = "${element(aws_launch_configuration.workers.*.id, count.index)}" launch_configuration = "${element(aws_launch_configuration.workers.*.id, count.index)}"
vpc_zone_identifier = ["${split(",", coalesce(lookup(var.worker_groups[count.index], "subnets", ""), join(",", var.subnets)))}"] vpc_zone_identifier = ["${split(",", coalesce(lookup(var.worker_groups[count.index], "subnets", ""), join(",", var.subnets)))}"]
count = "${length(var.worker_groups)}" count = "${var.worker_group_count}"
tags = ["${concat( tags = ["${concat(
list( list(
@@ -30,7 +30,7 @@ resource "aws_launch_configuration" "workers" {
key_name = "${lookup(var.worker_groups[count.index], "key_name", lookup(var.workers_group_defaults, "key_name"))}" key_name = "${lookup(var.worker_groups[count.index], "key_name", lookup(var.workers_group_defaults, "key_name"))}"
user_data_base64 = "${base64encode(element(data.template_file.userdata.*.rendered, count.index))}" user_data_base64 = "${base64encode(element(data.template_file.userdata.*.rendered, count.index))}"
ebs_optimized = "${lookup(var.worker_groups[count.index], "ebs_optimized", lookup(local.ebs_optimized, lookup(var.worker_groups[count.index], "instance_type", lookup(var.workers_group_defaults, "instance_type")), false))}" ebs_optimized = "${lookup(var.worker_groups[count.index], "ebs_optimized", lookup(local.ebs_optimized, lookup(var.worker_groups[count.index], "instance_type", lookup(var.workers_group_defaults, "instance_type")), false))}"
count = "${length(var.worker_groups)}" count = "${var.worker_group_count}"
lifecycle { lifecycle {
create_before_destroy = true create_before_destroy = true