diff --git a/.gitignore b/.gitignore index 269bd04..d139523 100644 --- a/.gitignore +++ b/.gitignore @@ -5,7 +5,7 @@ npm-debug.log *.sh *.terraform *.pem -*.tfvars +terraform.tfvars *.tfplan *.tfstate *.tfstate.backup diff --git a/main.tf b/main.tf index 1620e8b..61d75a1 100644 --- a/main.tf +++ b/main.tf @@ -14,7 +14,7 @@ resource "google_compute_instance" "nginx_instance" { environment = var.environment_map[var.target_environment] } tags = var.compute-source-tags - + boot_disk { initialize_params { image = "debian-cloud/debian-11" @@ -60,4 +60,14 @@ resource "google_compute_instance" "mysqldb" { network = data.google_compute_network.default.self_link subnetwork = google_compute_subnetwork.subnet-1.self_link } -} \ No newline at end of file +} + +## REDIS +resource "google_redis_instance" "redis" { + name = var.environment_instance_settings[var.target_environment].redis.name + tier = var.environment_instance_settings[var.target_environment].redis.tier + memory_size_gb = var.environment_instance_settings[var.target_environment].redis.memory_size_gb + location_id = var.zone + authorized_network = data.google_compute_network.default.id +} + diff --git a/terraform.auto.tfvars b/terraform.auto.tfvars new file mode 100644 index 0000000..2ad78d0 --- /dev/null +++ b/terraform.auto.tfvars @@ -0,0 +1,40 @@ +environment_instance_settings = { + "DEV" = { + machine_type = "f1-micro" + labels = { + environment = "dev" + }, + redis = { + name = "customer-id-cache", + tier = "STANDARD_HA", + memory_size_gb =1, + display_name = "Customer Data Cache" + } + }, + "QA" = { + machine_type = "e2-micro" + labels = { + environment = "qa" + }, + redis = { + name = "customer-id-cache", + tier = "STANDARD_HA", + memory_size_gb = 3, + display_name = "Customer Data Cache" + } + }, + "STAGE" = { + machine_type = "e2-micro" + labels = { + environment = "stage" + }, + redis = {} + }, + "PROD" = { + machine_type = "e2-medium" + labels = { + environment = "prod" + }, + redis = {} + } +} \ No newline at end of file diff --git a/variables.tf b/variables.tf index dce6ea0..a54d2ab 100644 --- a/variables.tf +++ b/variables.tf @@ -74,31 +74,6 @@ variable "environment_machine_type" { } variable "environment_instance_settings" { - type = map(object({machine_type=string, labels=map(string)})) - default = { - "DEV" = { - machine_type = "f1-micro" - labels = { - environment = "dev" - } - }, - "QA" = { - machine_type = "e2-micro" - labels = { - environment = "qa" - } - }, - "STAGE" = { - machine_type = "e2-micro" - labels = { - environment = "stage" - } - }, - "PROD" = { - machine_type = "e2-medium" - labels = { - environment = "prod" - } - } - } -} \ No newline at end of file + type = map(any) +} +