From 7ee19458938f46c651a67b045b75b5ca319d1275 Mon Sep 17 00:00:00 2001 From: Ryan Ahearn Date: Wed, 2 Nov 2022 09:08:08 -0400 Subject: [PATCH] Add demo terraform environment --- deploy-config/demo.yml | 7 ++++ terraform/create_service_account.sh | 2 +- terraform/demo/main.tf | 55 ++++++++++++++++++++++++++++ terraform/demo/providers.tf | 17 +++++++++ terraform/demo/variables.tf | 4 ++ terraform/destroy_service_account.sh | 2 +- terraform/production/main.tf | 6 +-- terraform/set_space_egress.sh | 2 +- 8 files changed, 89 insertions(+), 6 deletions(-) create mode 100644 deploy-config/demo.yml create mode 100644 terraform/demo/main.tf create mode 100644 terraform/demo/providers.tf create mode 100644 terraform/demo/variables.tf diff --git a/deploy-config/demo.yml b/deploy-config/demo.yml new file mode 100644 index 000000000..5a42ba5c2 --- /dev/null +++ b/deploy-config/demo.yml @@ -0,0 +1,7 @@ +env: demo +web_instances: 1 +web_memory: 1G +worker_instances: 1 +worker_memory: 512M +public_api_route: notifications-api-demo.app.cloud.gov +admin_base_url: https://notifications-admin.app.cloud.gov diff --git a/terraform/create_service_account.sh b/terraform/create_service_account.sh index 1a6b0eb1c..fafe83adf 100755 --- a/terraform/create_service_account.sh +++ b/terraform/create_service_account.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -org="gsa-10x-prototyping" +org="gsa-tts-benefits-studio-prototyping" usage=" $0: Create a Service User Account for a given space diff --git a/terraform/demo/main.tf b/terraform/demo/main.tf new file mode 100644 index 000000000..8326175c8 --- /dev/null +++ b/terraform/demo/main.tf @@ -0,0 +1,55 @@ +locals { + cf_org_name = "gsa-tts-benefits-studio-prototyping" + cf_space_name = "notify-demo" + env = "demo" + app_name = "notifications-api" + recursive_delete = false +} + +module "database" { + source = "github.com/18f/terraform-cloudgov//database" + + cf_user = var.cf_user + cf_password = var.cf_password + cf_org_name = local.cf_org_name + cf_space_name = local.cf_space_name + env = local.env + app_name = local.app_name + recursive_delete = local.recursive_delete + rds_plan_name = "micro-psql" +} + +module "redis" { + source = "github.com/18f/terraform-cloudgov//redis" + + cf_user = var.cf_user + cf_password = var.cf_password + cf_org_name = local.cf_org_name + cf_space_name = local.cf_space_name + env = local.env + app_name = local.app_name + recursive_delete = local.recursive_delete + redis_plan_name = "redis-dev" +} + +module "csv_upload_bucket" { + source = "github.com/18f/terraform-cloudgov//s3" + + cf_user = var.cf_user + cf_password = var.cf_password + cf_org_name = local.cf_org_name + cf_space_name = local.cf_space_name + recursive_delete = local.recursive_delete + s3_service_name = "${local.app_name}-csv-upload-bucket-${local.env}" +} + +module "contact_list_bucket" { + source = "github.com/18f/terraform-cloudgov//s3" + + cf_user = var.cf_user + cf_password = var.cf_password + cf_org_name = local.cf_org_name + cf_space_name = local.cf_space_name + recursive_delete = local.recursive_delete + s3_service_name = "${local.app_name}-contact-list-bucket-${local.env}" +} diff --git a/terraform/demo/providers.tf b/terraform/demo/providers.tf new file mode 100644 index 000000000..b11f77c29 --- /dev/null +++ b/terraform/demo/providers.tf @@ -0,0 +1,17 @@ +terraform { + required_version = "~> 1.0" + required_providers { + cloudfoundry = { + source = "cloudfoundry-community/cloudfoundry" + version = "0.15.5" + } + } + + backend "s3" { + bucket = "TKTK" + key = "api.tfstate.prod" + encrypt = "true" + region = "us-gov-west-1" + profile = "notify-terraform-backend" + } +} diff --git a/terraform/demo/variables.tf b/terraform/demo/variables.tf new file mode 100644 index 000000000..a24f2f3f8 --- /dev/null +++ b/terraform/demo/variables.tf @@ -0,0 +1,4 @@ +variable "cf_password" { + sensitive = true +} +variable "cf_user" {} diff --git a/terraform/destroy_service_account.sh b/terraform/destroy_service_account.sh index caeb12901..e8db20474 100755 --- a/terraform/destroy_service_account.sh +++ b/terraform/destroy_service_account.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -org="gsa-10x-prototyping" +org="gsa-tts-benefits-studio-prototyping" usage=" $0: Destroy a Service User Account in a given space diff --git a/terraform/production/main.tf b/terraform/production/main.tf index 7be376ba4..d5103c27f 100644 --- a/terraform/production/main.tf +++ b/terraform/production/main.tf @@ -1,6 +1,6 @@ locals { cf_org_name = "gsa-tts-benefits-studio-prototyping" - cf_space_name = "notify-demo" + cf_space_name = "notify-prod" env = "production" app_name = "notifications-api" recursive_delete = false @@ -16,7 +16,7 @@ module "database" { env = local.env app_name = local.app_name recursive_delete = local.recursive_delete - rds_plan_name = "micro-psql" + rds_plan_name = "TKTK-production-rds-plan" } module "redis" { @@ -29,7 +29,7 @@ module "redis" { env = local.env app_name = local.app_name recursive_delete = local.recursive_delete - redis_plan_name = "redis-dev" + redis_plan_name = "TKTK-production-redis-plan" } module "csv_upload_bucket" { diff --git a/terraform/set_space_egress.sh b/terraform/set_space_egress.sh index 7eeaaf989..e3893e809 100755 --- a/terraform/set_space_egress.sh +++ b/terraform/set_space_egress.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -org="gsa-10x-prototyping" +org="gsa-tts-benefits-studio-prototyping" usage=" $0: Set egress rules for given space