diff --git a/terraform/compute.tf b/terraform/compute.tf index b3c857f..aae5407 100644 --- a/terraform/compute.tf +++ b/terraform/compute.tf @@ -7,25 +7,26 @@ module "ec2_ssh_key" { } module "standalone_ec2" { - for_each = var.ec2_template[*] + # Create a new list for each ec2_template object + for_each = { for idx, val in var.ec2_template : idx => val } source = "terraform-aws-modules/ec2-instance/aws" - name = each.value["hostname"] - ami = each.value["ami"] + name = each.value.hostname + ami = each.value.ami - instance_type = each.value["family"] + instance_type = each.value.family key_name = module.ec2_ssh_key.key_pair_name monitoring = true vpc_security_group_ids = [module.ec2_rdp_sg.security_group_id] - subnet_id = each.value["subnet"] + subnet_id = each.value.subnet root_block_device = [ { - volume_size = each.value["disksize"] + volume_size = each.value.disksize encrypted = true } ] tags = var.tags -} \ No newline at end of file +} diff --git a/terraform/database.tf b/terraform/database.tf index 200c18f..3a4cf6f 100644 --- a/terraform/database.tf +++ b/terraform/database.tf @@ -1,11 +1,12 @@ module "db_psql" { source = "terraform-aws-modules/rds/aws" - for_each = var.db_template[*] - identifier = each.value["name"] + for_each = { for idx, val in var.db_template : idx => val } + identifier = each.value.name - engine = each.value["engine"] - engine_version = each.value["engine_version"] - instance_class = each.value["family"] + engine = each.value.engine + engine_version = each.value.engine_version + family = each.value.family + instance_class = each.value.class tags = var.tags -} \ No newline at end of file +} diff --git a/terraform/main.tf b/terraform/main.tf index 46d553c..e601cb2 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -9,7 +9,7 @@ terraform { provider "aws" { - region = var.region + region = var.region # Configure Terraform to plan diff --git a/terraform/terraform.tfvars b/terraform/terraform.tfvars index e0fade7..e42d1ba 100644 --- a/terraform/terraform.tfvars +++ b/terraform/terraform.tfvars @@ -35,10 +35,11 @@ ec2_template = [ db_template = [ { - name = "RDS1" + name = "rds1" engine = "postgres" engine_version = 11 - family = "db.t3.micro" + class = "db.t3.micro" + family = "postgres" subnet = "10.1.5.0/24" } ] @@ -52,4 +53,4 @@ tags = { open_to_internet = "true" builder = "terraform" project = "coalfire-3tier" -} \ No newline at end of file +} diff --git a/terraform/variables.tf b/terraform/variables.tf index 0cdd320..691c162 100644 --- a/terraform/variables.tf +++ b/terraform/variables.tf @@ -64,7 +64,8 @@ variable "db_template" { name = string engine = string engine_version = number + class = string family = string subnet = string })) -} \ No newline at end of file +}