From 76cc718b32b5280d1edf88ad7ba620d7c977f87d Mon Sep 17 00:00:00 2001 From: John Skiles Skinner Date: Tue, 18 Jun 2024 17:26:08 -0700 Subject: [PATCH 1/3] Remove recursive_delete from SNS & SES shared modules --- terraform/demo/main.tf | 3 --- terraform/production/main.tf | 3 --- terraform/sandbox/main.tf | 3 --- terraform/shared/ses/main.tf | 1 - terraform/shared/ses/variables.tf | 6 ------ terraform/shared/sns/main.tf | 1 - terraform/shared/sns/variables.tf | 6 ------ terraform/staging/main.tf | 3 --- 8 files changed, 26 deletions(-) diff --git a/terraform/demo/main.tf b/terraform/demo/main.tf index e252ddf6d..c335916e1 100644 --- a/terraform/demo/main.tf +++ b/terraform/demo/main.tf @@ -3,7 +3,6 @@ locals { cf_space_name = "notify-demo" env = "demo" app_name = "notify-api" - recursive_delete = false } module "database" { @@ -66,7 +65,6 @@ module "ses_email" { cf_org_name = local.cf_org_name cf_space_name = local.cf_space_name name = "${local.app_name}-ses-${local.env}" - recursive_delete = local.recursive_delete aws_region = "us-west-2" email_domain = "notify.sandbox.10x.gsa.gov" email_receipt_error = "notify-support@gsa.gov" @@ -78,7 +76,6 @@ module "sns_sms" { cf_org_name = local.cf_org_name cf_space_name = local.cf_space_name name = "${local.app_name}-sns-${local.env}" - recursive_delete = local.recursive_delete aws_region = "us-east-1" monthly_spend_limit = 25 } diff --git a/terraform/production/main.tf b/terraform/production/main.tf index 5a2c520b1..b0bd2f319 100644 --- a/terraform/production/main.tf +++ b/terraform/production/main.tf @@ -3,7 +3,6 @@ locals { cf_space_name = "notify-production" env = "production" app_name = "notify-api" - recursive_delete = false } module "database" { @@ -51,7 +50,6 @@ module "ses_email" { cf_org_name = local.cf_org_name cf_space_name = local.cf_space_name name = "${local.app_name}-ses-${local.env}" - recursive_delete = local.recursive_delete aws_region = "us-gov-west-1" email_domain = "notify.gov" mail_from_subdomain = "mail" @@ -64,7 +62,6 @@ module "sns_sms" { cf_org_name = local.cf_org_name cf_space_name = local.cf_space_name name = "${local.app_name}-sns-${local.env}" - recursive_delete = local.recursive_delete aws_region = "us-gov-west-1" monthly_spend_limit = 1000 } diff --git a/terraform/sandbox/main.tf b/terraform/sandbox/main.tf index b0b6381bd..29879fe83 100644 --- a/terraform/sandbox/main.tf +++ b/terraform/sandbox/main.tf @@ -3,7 +3,6 @@ locals { cf_space_name = "notify-sandbox" env = "sandbox" app_name = "notify-api" - recursive_delete = true # deprecated, still used in shared modules } resource "null_resource" "prevent_destroy" { @@ -71,7 +70,6 @@ module "ses_email" { cf_org_name = local.cf_org_name cf_space_name = local.cf_space_name name = "${local.app_name}-ses-${local.env}" - recursive_delete = local.recursive_delete aws_region = "us-west-2" email_receipt_error = "notify-support@gsa.gov" } @@ -82,7 +80,6 @@ module "sns_sms" { cf_org_name = local.cf_org_name cf_space_name = local.cf_space_name name = "${local.app_name}-sns-${local.env}" - recursive_delete = local.recursive_delete aws_region = "us-east-2" monthly_spend_limit = 1 } diff --git a/terraform/shared/ses/main.tf b/terraform/shared/ses/main.tf index a29a8ce10..016607efa 100644 --- a/terraform/shared/ses/main.tf +++ b/terraform/shared/ses/main.tf @@ -19,7 +19,6 @@ resource "cloudfoundry_service_instance" "ses" { name = var.name space = data.cloudfoundry_space.space.id service_plan = data.cloudfoundry_service.ses.service_plans["base"] - recursive_delete = var.recursive_delete json_params = jsonencode({ region = var.aws_region domain = var.email_domain diff --git a/terraform/shared/ses/variables.tf b/terraform/shared/ses/variables.tf index 74e852cf6..a92261656 100644 --- a/terraform/shared/ses/variables.tf +++ b/terraform/shared/ses/variables.tf @@ -13,12 +13,6 @@ variable "name" { description = "name of the service instance" } -variable "recursive_delete" { - type = bool - description = "when true, deletes service bindings attached to the resource (not recommended for production)" - default = false -} - variable "aws_region" { type = string description = "AWS region the SES instance is in" diff --git a/terraform/shared/sns/main.tf b/terraform/shared/sns/main.tf index a23c4e872..c7c8df6f9 100644 --- a/terraform/shared/sns/main.tf +++ b/terraform/shared/sns/main.tf @@ -19,7 +19,6 @@ resource "cloudfoundry_service_instance" "sns" { name = var.name space = data.cloudfoundry_space.space.id service_plan = data.cloudfoundry_service.sns.service_plans["base"] - recursive_delete = var.recursive_delete json_params = jsonencode({ region = var.aws_region monthly_spend_limit = var.monthly_spend_limit diff --git a/terraform/shared/sns/variables.tf b/terraform/shared/sns/variables.tf index 611050337..acf7c5010 100644 --- a/terraform/shared/sns/variables.tf +++ b/terraform/shared/sns/variables.tf @@ -13,12 +13,6 @@ variable "name" { description = "name of the service instance" } -variable "recursive_delete" { - type = bool - description = "when true, deletes service bindings attached to the resource (not recommended for production)" - default = false -} - variable "aws_region" { type = string description = "AWS region the SNS settings are set in" diff --git a/terraform/staging/main.tf b/terraform/staging/main.tf index c46e0d3fa..6dc81928e 100644 --- a/terraform/staging/main.tf +++ b/terraform/staging/main.tf @@ -3,7 +3,6 @@ locals { cf_space_name = "notify-staging" env = "staging" app_name = "notify-api" - recursive_delete = true } module "database" { @@ -53,7 +52,6 @@ module "ses_email" { cf_org_name = local.cf_org_name cf_space_name = local.cf_space_name name = "${local.app_name}-ses-${local.env}" - recursive_delete = local.recursive_delete aws_region = "us-west-2" mail_from_subdomain = "mail" email_receipt_error = "notify-support@gsa.gov" @@ -65,7 +63,6 @@ module "sns_sms" { cf_org_name = local.cf_org_name cf_space_name = local.cf_space_name name = "${local.app_name}-sns-${local.env}" - recursive_delete = local.recursive_delete aws_region = "us-west-2" monthly_spend_limit = 25 } From fde4c47e31379c0b7b9c1dc3bc0d812c5a725165 Mon Sep 17 00:00:00 2001 From: John Skiles Skinner Date: Tue, 18 Jun 2024 17:43:38 -0700 Subject: [PATCH 2/3] Terraform format the SNS and SES modules --- terraform/shared/ses/main.tf | 6 +++--- terraform/shared/sns/main.tf | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/terraform/shared/ses/main.tf b/terraform/shared/ses/main.tf index 016607efa..4c1bb54b9 100644 --- a/terraform/shared/ses/main.tf +++ b/terraform/shared/ses/main.tf @@ -16,9 +16,9 @@ data "cloudfoundry_service" "ses" { } resource "cloudfoundry_service_instance" "ses" { - name = var.name - space = data.cloudfoundry_space.space.id - service_plan = data.cloudfoundry_service.ses.service_plans["base"] + name = var.name + space = data.cloudfoundry_space.space.id + service_plan = data.cloudfoundry_service.ses.service_plans["base"] json_params = jsonencode({ region = var.aws_region domain = var.email_domain diff --git a/terraform/shared/sns/main.tf b/terraform/shared/sns/main.tf index c7c8df6f9..aa0079f92 100644 --- a/terraform/shared/sns/main.tf +++ b/terraform/shared/sns/main.tf @@ -16,9 +16,9 @@ data "cloudfoundry_service" "sns" { } resource "cloudfoundry_service_instance" "sns" { - name = var.name - space = data.cloudfoundry_space.space.id - service_plan = data.cloudfoundry_service.sns.service_plans["base"] + name = var.name + space = data.cloudfoundry_space.space.id + service_plan = data.cloudfoundry_service.sns.service_plans["base"] json_params = jsonencode({ region = var.aws_region monthly_spend_limit = var.monthly_spend_limit From 6449c13312f9bb847ea6e35798c3e8c2eb34db04 Mon Sep 17 00:00:00 2001 From: John Skiles Skinner Date: Tue, 18 Jun 2024 17:46:36 -0700 Subject: [PATCH 3/3] Running fmt to create a tf plan output file to make PR pass --- terraform/demo/main.tf | 8 ++++---- terraform/production/main.tf | 8 ++++---- terraform/sandbox/main.tf | 32 ++++++++++++++++---------------- terraform/staging/main.tf | 8 ++++---- 4 files changed, 28 insertions(+), 28 deletions(-) diff --git a/terraform/demo/main.tf b/terraform/demo/main.tf index c335916e1..399861abd 100644 --- a/terraform/demo/main.tf +++ b/terraform/demo/main.tf @@ -1,8 +1,8 @@ locals { - cf_org_name = "gsa-tts-benefits-studio" - cf_space_name = "notify-demo" - env = "demo" - app_name = "notify-api" + cf_org_name = "gsa-tts-benefits-studio" + cf_space_name = "notify-demo" + env = "demo" + app_name = "notify-api" } module "database" { diff --git a/terraform/production/main.tf b/terraform/production/main.tf index b0bd2f319..9a159e663 100644 --- a/terraform/production/main.tf +++ b/terraform/production/main.tf @@ -1,8 +1,8 @@ locals { - cf_org_name = "gsa-tts-benefits-studio" - cf_space_name = "notify-production" - env = "production" - app_name = "notify-api" + cf_org_name = "gsa-tts-benefits-studio" + cf_space_name = "notify-production" + env = "production" + app_name = "notify-api" } module "database" { diff --git a/terraform/sandbox/main.tf b/terraform/sandbox/main.tf index 29879fe83..319b273ba 100644 --- a/terraform/sandbox/main.tf +++ b/terraform/sandbox/main.tf @@ -1,8 +1,8 @@ locals { - cf_org_name = "gsa-tts-benefits-studio" - cf_space_name = "notify-sandbox" - env = "sandbox" - app_name = "notify-api" + cf_org_name = "gsa-tts-benefits-studio" + cf_space_name = "notify-sandbox" + env = "sandbox" + app_name = "notify-api" } resource "null_resource" "prevent_destroy" { @@ -15,19 +15,19 @@ resource "null_resource" "prevent_destroy" { module "database" { source = "github.com/GSA-TTS/terraform-cloudgov//database?ref=v1.0.0" - cf_org_name = local.cf_org_name - cf_space_name = local.cf_space_name - name = "${local.app_name}-rds-${local.env}" - rds_plan_name = "micro-psql" + cf_org_name = local.cf_org_name + cf_space_name = local.cf_space_name + name = "${local.app_name}-rds-${local.env}" + rds_plan_name = "micro-psql" } module "redis" { # default v6.2; delete after v7.0 resource is bound source = "github.com/GSA-TTS/terraform-cloudgov//redis?ref=v1.0.0" - cf_org_name = local.cf_org_name - cf_space_name = local.cf_space_name - name = "${local.app_name}-redis-${local.env}" - redis_plan_name = "redis-dev" + cf_org_name = local.cf_org_name + cf_space_name = local.cf_space_name + name = "${local.app_name}-redis-${local.env}" + redis_plan_name = "redis-dev" } module "redis-v70" { @@ -37,7 +37,7 @@ module "redis-v70" { cf_space_name = local.cf_space_name name = "${local.app_name}-redis-v70-${local.env}" redis_plan_name = "redis-dev" - json_params = jsonencode( + json_params = jsonencode( { "engineVersion" : "7.0", } @@ -47,9 +47,9 @@ module "redis-v70" { module "csv_upload_bucket" { source = "github.com/GSA-TTS/terraform-cloudgov//s3?ref=v1.0.0" - cf_org_name = local.cf_org_name - cf_space_name = local.cf_space_name - name = "${local.app_name}-csv-upload-bucket-${local.env}" + cf_org_name = local.cf_org_name + cf_space_name = local.cf_space_name + name = "${local.app_name}-csv-upload-bucket-${local.env}" } module "egress-space" { diff --git a/terraform/staging/main.tf b/terraform/staging/main.tf index 6dc81928e..ec0e00ec3 100644 --- a/terraform/staging/main.tf +++ b/terraform/staging/main.tf @@ -1,8 +1,8 @@ locals { - cf_org_name = "gsa-tts-benefits-studio" - cf_space_name = "notify-staging" - env = "staging" - app_name = "notify-api" + cf_org_name = "gsa-tts-benefits-studio" + cf_space_name = "notify-staging" + env = "staging" + app_name = "notify-api" } module "database" {