Merge pull request #839 from GSA/API-729_Recursive_Delete_Changes

Api 729 recursive delete changes
This commit is contained in:
Carlo Costino
2024-03-08 12:12:25 -05:00
committed by GitHub
15 changed files with 52 additions and 79 deletions

View File

@@ -3,7 +3,7 @@ terraform {
required_providers { required_providers {
cloudfoundry = { cloudfoundry = {
source = "cloudfoundry-community/cloudfoundry" source = "cloudfoundry-community/cloudfoundry"
version = "0.53.0" version = "0.53.1"
} }
} }
} }

View File

@@ -1,17 +1,15 @@
locals { locals {
cf_org_name = "gsa-tts-benefits-studio" cf_org_name = "gsa-tts-benefits-studio"
cf_space_name = "notify-local-dev" cf_space_name = "notify-local-dev"
recursive_delete = true key_name = "${var.username}-api-dev-key"
key_name = "${var.username}-api-dev-key"
} }
module "csv_upload_bucket" { module "csv_upload_bucket" {
source = "github.com/18f/terraform-cloudgov//s3?ref=v0.7.1" source = "github.com/18f/terraform-cloudgov//s3?ref=v0.7.1"
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
recursive_delete = local.recursive_delete name = "${var.username}-csv-upload-bucket"
name = "${var.username}-csv-upload-bucket"
} }
resource "cloudfoundry_service_key" "csv_key" { resource "cloudfoundry_service_key" "csv_key" {
name = local.key_name name = local.key_name

View File

@@ -3,7 +3,7 @@ terraform {
required_providers { required_providers {
cloudfoundry = { cloudfoundry = {
source = "cloudfoundry-community/cloudfoundry" source = "cloudfoundry-community/cloudfoundry"
version = "0.53.0" version = "0.53.1"
} }
} }
} }

View File

@@ -1,38 +1,34 @@
locals { locals {
cf_org_name = "gsa-tts-benefits-studio" cf_org_name = "gsa-tts-benefits-studio"
cf_space_name = "notify-sandbox" cf_space_name = "notify-sandbox"
env = "sandbox" env = "sandbox"
app_name = "notify-api" app_name = "notify-api"
recursive_delete = true
} }
module "database" { module "database" {
source = "github.com/18f/terraform-cloudgov//database?ref=v0.7.1" source = "github.com/18f/terraform-cloudgov//database?ref=v0.7.1"
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
name = "${local.app_name}-rds-${local.env}" name = "${local.app_name}-rds-${local.env}"
recursive_delete = local.recursive_delete rds_plan_name = "micro-psql"
rds_plan_name = "micro-psql"
} }
module "redis" { module "redis" {
source = "github.com/18f/terraform-cloudgov//redis?ref=v0.7.1" source = "github.com/18f/terraform-cloudgov//redis?ref=v0.7.1"
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
name = "${local.app_name}-redis-${local.env}" name = "${local.app_name}-redis-${local.env}"
recursive_delete = local.recursive_delete redis_plan_name = "redis-dev"
redis_plan_name = "redis-dev"
} }
module "csv_upload_bucket" { module "csv_upload_bucket" {
source = "github.com/18f/terraform-cloudgov//s3?ref=v0.7.1" source = "github.com/18f/terraform-cloudgov//s3?ref=v0.7.1"
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
recursive_delete = local.recursive_delete name = "${local.app_name}-csv-upload-bucket-${local.env}"
name = "${local.app_name}-csv-upload-bucket-${local.env}"
} }
module "egress-space" { module "egress-space" {
@@ -53,7 +49,6 @@ module "ses_email" {
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
name = "${local.app_name}-ses-${local.env}" name = "${local.app_name}-ses-${local.env}"
recursive_delete = local.recursive_delete
aws_region = "us-west-2" aws_region = "us-west-2"
email_receipt_error = "notify-support@gsa.gov" email_receipt_error = "notify-support@gsa.gov"
} }
@@ -64,7 +59,6 @@ module "sns_sms" {
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
name = "${local.app_name}-sns-${local.env}" name = "${local.app_name}-sns-${local.env}"
recursive_delete = local.recursive_delete
aws_region = "us-east-2" aws_region = "us-east-2"
monthly_spend_limit = 1 monthly_spend_limit = 1
} }

View File

@@ -3,7 +3,7 @@ terraform {
required_providers { required_providers {
cloudfoundry = { cloudfoundry = {
source = "cloudfoundry-community/cloudfoundry" source = "cloudfoundry-community/cloudfoundry"
version = "0.53.0" version = "0.53.1"
} }
} }

View File

@@ -11,8 +11,9 @@ data "cloudfoundry_org" "org" {
### ###
resource "cloudfoundry_space" "public_egress" { resource "cloudfoundry_space" "public_egress" {
name = "${var.cf_restricted_space_name}-egress" delete_recursive_allowed = false
org = data.cloudfoundry_org.org.id name = "${var.cf_restricted_space_name}-egress"
org = data.cloudfoundry_org.org.id
} }
### ###

View File

@@ -3,7 +3,7 @@ terraform {
required_providers { required_providers {
cloudfoundry = { cloudfoundry = {
source = "cloudfoundry-community/cloudfoundry" source = "cloudfoundry-community/cloudfoundry"
version = "0.53.0" version = "0.53.1"
} }
} }
} }

View File

@@ -16,10 +16,9 @@ data "cloudfoundry_service" "ses" {
} }
resource "cloudfoundry_service_instance" "ses" { resource "cloudfoundry_service_instance" "ses" {
name = var.name name = var.name
space = data.cloudfoundry_space.space.id space = data.cloudfoundry_space.space.id
service_plan = data.cloudfoundry_service.ses.service_plans["base"] service_plan = data.cloudfoundry_service.ses.service_plans["base"]
recursive_delete = var.recursive_delete
json_params = jsonencode({ json_params = jsonencode({
region = var.aws_region region = var.aws_region
domain = var.email_domain domain = var.email_domain

View File

@@ -3,7 +3,7 @@ terraform {
required_providers { required_providers {
cloudfoundry = { cloudfoundry = {
source = "cloudfoundry-community/cloudfoundry" source = "cloudfoundry-community/cloudfoundry"
version = "0.53.0" version = "0.53.1"
} }
} }
} }

View File

@@ -13,12 +13,6 @@ variable "name" {
description = "name of the service instance" 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" { variable "aws_region" {
type = string type = string
description = "AWS region the SES instance is in" description = "AWS region the SES instance is in"

View File

@@ -16,10 +16,9 @@ data "cloudfoundry_service" "sns" {
} }
resource "cloudfoundry_service_instance" "sns" { resource "cloudfoundry_service_instance" "sns" {
name = var.name name = var.name
space = data.cloudfoundry_space.space.id space = data.cloudfoundry_space.space.id
service_plan = data.cloudfoundry_service.sns.service_plans["base"] service_plan = data.cloudfoundry_service.sns.service_plans["base"]
recursive_delete = var.recursive_delete
json_params = jsonencode({ json_params = jsonencode({
region = var.aws_region region = var.aws_region
monthly_spend_limit = var.monthly_spend_limit monthly_spend_limit = var.monthly_spend_limit

View File

@@ -3,7 +3,7 @@ terraform {
required_providers { required_providers {
cloudfoundry = { cloudfoundry = {
source = "cloudfoundry-community/cloudfoundry" source = "cloudfoundry-community/cloudfoundry"
version = "0.53.0" version = "0.53.1"
} }
} }
} }

View File

@@ -13,12 +13,6 @@ variable "name" {
description = "name of the service instance" 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" { variable "aws_region" {
type = string type = string
description = "AWS region the SNS settings are set in" description = "AWS region the SNS settings are set in"

View File

@@ -1,38 +1,34 @@
locals { locals {
cf_org_name = "gsa-tts-benefits-studio" cf_org_name = "gsa-tts-benefits-studio"
cf_space_name = "notify-staging" cf_space_name = "notify-staging"
env = "staging" env = "staging"
app_name = "notify-api" app_name = "notify-api"
recursive_delete = true
} }
module "database" { module "database" {
source = "github.com/18f/terraform-cloudgov//database?ref=v0.7.1" source = "github.com/18f/terraform-cloudgov//database?ref=v0.7.1"
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
name = "${local.app_name}-rds-${local.env}" name = "${local.app_name}-rds-${local.env}"
recursive_delete = local.recursive_delete rds_plan_name = "micro-psql"
rds_plan_name = "micro-psql"
} }
module "redis" { module "redis" {
source = "github.com/18f/terraform-cloudgov//redis?ref=v0.7.1" source = "github.com/18f/terraform-cloudgov//redis?ref=v0.7.1"
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
name = "${local.app_name}-redis-${local.env}" name = "${local.app_name}-redis-${local.env}"
recursive_delete = local.recursive_delete redis_plan_name = "redis-dev"
redis_plan_name = "redis-dev"
} }
module "csv_upload_bucket" { module "csv_upload_bucket" {
source = "github.com/18f/terraform-cloudgov//s3?ref=v0.7.1" source = "github.com/18f/terraform-cloudgov//s3?ref=v0.7.1"
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
recursive_delete = local.recursive_delete name = "${local.app_name}-csv-upload-bucket-${local.env}"
name = "${local.app_name}-csv-upload-bucket-${local.env}"
} }
module "egress-space" { module "egress-space" {
@@ -53,7 +49,6 @@ module "ses_email" {
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
name = "${local.app_name}-ses-${local.env}" name = "${local.app_name}-ses-${local.env}"
recursive_delete = local.recursive_delete
aws_region = "us-west-2" aws_region = "us-west-2"
mail_from_subdomain = "mail" mail_from_subdomain = "mail"
email_receipt_error = "notify-support@gsa.gov" email_receipt_error = "notify-support@gsa.gov"
@@ -65,7 +60,6 @@ module "sns_sms" {
cf_org_name = local.cf_org_name cf_org_name = local.cf_org_name
cf_space_name = local.cf_space_name cf_space_name = local.cf_space_name
name = "${local.app_name}-sns-${local.env}" name = "${local.app_name}-sns-${local.env}"
recursive_delete = local.recursive_delete
aws_region = "us-west-2" aws_region = "us-west-2"
monthly_spend_limit = 25 monthly_spend_limit = 25
} }

View File

@@ -3,7 +3,7 @@ terraform {
required_providers { required_providers {
cloudfoundry = { cloudfoundry = {
source = "cloudfoundry-community/cloudfoundry" source = "cloudfoundry-community/cloudfoundry"
version = "0.53.0" version = "0.53.1"
} }
} }