99 # Subject Alternative Names on certificates can only contain one wildcard,
1010 # and the wildcard can only match a single label (i.e. "y." but not "x.y.")
1111 admin_app_hostname = " pr-${ var . pull_request_number } -admin.submit.review.forms.service.gov.uk"
12+ admin_app_internal_hostname = " pr-${ var . pull_request_number } -admin-internal.submit.review.forms.service.gov.uk"
1213
1314 forms_runner_env_vars = [
1415 { name = " DATABASE_URL" , value = " postgres://postgres:postgres@127.0.0.1:5432/forms-runner" },
@@ -22,7 +23,7 @@ locals {
2223 { name = " SETTINGS__ANALYTICS_ENABLED" , value = " false" },
2324 { name = " SETTINGS__CLOUDWATCH_METRICS_ENABLED" , value = " false" },
2425 { name = " SETTINGS__FORMS_ADMIN__BASE_URL" , value = " https://${ local . admin_app_hostname } " },
25- { name = " SETTINGS__FORMS_API__BASE_URL" , value = " http ://localhost:9292 " },
26+ { name = " SETTINGS__FORMS_API__BASE_URL" , value = " https ://${ local . admin_app_internal_hostname } " },
2627 { name = " SETTINGS__FORMS_ENV" , value = " review" },
2728
2829 # #
@@ -33,15 +34,6 @@ locals {
3334 # #
3435 ]
3536
36- forms_api_env_vars = [
37- { name = " DATABASE_URL" , value = " postgres://postgres:postgres@127.0.0.1:5432" },
38- { name = " EMAIL" , value = " review-app-submissions@review.forms.service.gov.uk" },
39- { name = " RAILS_DEVELOPMENT_HOSTS" , value = " localhost:9292" },
40- { name = " RAILS_ENV" , value = " production" },
41- { name = " SECRET_KEY_BASE" , value = " unsecured_secret_key_material" },
42- { name = " SETTINGS__FORMS_ENV" , value = " review" },
43- ]
44-
4537 forms_admin_env_vars = [
4638 { name = " DATABASE_URL" , value = " postgres://postgres:postgres@127.0.0.1:5432" },
4739 { name = " GOVUK_APP_DOMAIN" , value = " publishing.service.gov.uk" },
@@ -52,8 +44,6 @@ locals {
5244 { name = " SECRET_KEY_BASE" , value = " unsecured_secret_key_material" },
5345 { name = " SETTINGS__ACT_AS_USER_ENABLED" , value = " true" },
5446 { name = " SETTINGS__AUTH_PROVIDER" , value = " developer" },
55- { name = " SETTINGS__FORMS_API__AUTH_KEY" , value = " unsecured_api_key_for_review_apps_only" },
56- { name = " SETTINGS__FORMS_API__BASE_URL" , value = " http://localhost:9292" },
5747 { name = " SETTINGS__FORMS_ENV" , value = " review" },
5848 { name = " SETTINGS__FORMS_RUNNER__URL" , value = " https://${ local . runner_review_app_hostname } " },
5949 ]
@@ -138,45 +128,6 @@ resource "aws_ecs_task_definition" "task" {
138128 ]
139129 },
140130
141- # forms-api
142- {
143- name = " forms-api"
144- image = " 711966560482.dkr.ecr.eu-west-2.amazonaws.com/forms-api-deploy:latest"
145- command = []
146- essential = true
147- environment = local.forms_api_env_vars
148- readonlyRootFilesystem = true
149-
150- portMappings = [{ containerPort = 9292 }]
151-
152- logConfiguration = {
153- logDriver = " awslogs"
154- options = {
155- awslogs-group = data.terraform_remote_state.review.outputs.review_apps_log_group_name
156- awslogs-region = " eu-west-2"
157- awslogs-stream-prefix = " ${ local . logs_stream_prefix } /forms-api"
158- }
159- }
160-
161- healthCheck = {
162- command = [" CMD-SHELL" , " wget -O - 'http://localhost:9292/up' || exit 1" ]
163- interval = 30
164- retries = 5
165- startPeriod = 180
166- }
167-
168- dependsOn = [
169- {
170- containerName = " postgres"
171- condition = " HEALTHY"
172- },
173- {
174- containerName = " forms-api-seeding" ,
175- condition = " SUCCESS"
176- }
177- ]
178- },
179-
180131 # forms-admin
181132 {
182133 name = " forms-admin"
@@ -195,6 +146,12 @@ resource "aws_ecs_task_definition" "task" {
195146
196147 " traefik.http.services.forms-runner-pr-${ var . pull_request_number } -admin-app.loadbalancer.server.port" : " 3000" ,
197148 " traefik.http.services.forms-runner-pr-${ var . pull_request_number } -admin-app.loadbalancer.healthcheck.path" : " /up" ,
149+
150+ " traefik.http.middlewares.forms-runner-pr-${ var . pull_request_number } -admin-app-internal.ipallowlist.sourcerange" : " 127.0.0.1/32" ,
151+ " traefik.http.routers.forms-runner-pr-${ var . pull_request_number } -admin-app-internal.rule" : " Host(`${ local . admin_app_internal_hostname } `)" ,
152+ " traefik.http.routers.forms-runner-pr-${ var . pull_request_number } -admin-app-internal.service" : " forms-runner-pr-${ var . pull_request_number } -admin-app" ,
153+ " traefik.http.routers.forms-runner-pr-${ var . pull_request_number } -admin-app-internal.middlewares" : " forms-runner-pr-${ var . pull_request_number } -admin-app-internal@ecs"
154+
198155 " traefik.enable" : " true" ,
199156 },
200157
@@ -315,32 +272,6 @@ resource "aws_ecs_task_definition" "task" {
315272 ]
316273 },
317274
318- # forms-api-seeding
319- {
320- name = " forms-api-seeding"
321- image = " 711966560482.dkr.ecr.eu-west-2.amazonaws.com/forms-api-deploy:latest"
322- command = [" rake" , " db:setup" ]
323- essential = false
324- environment = local.forms_api_env_vars
325- readonlyRootFilesystem = true
326-
327- logConfiguration = {
328- logDriver = " awslogs"
329- options = {
330- awslogs-group = data.terraform_remote_state.review.outputs.review_apps_log_group_name
331- awslogs-region = " eu-west-2"
332- awslogs-stream-prefix = " ${ local . logs_stream_prefix } /forms-api-seeding"
333- }
334- }
335-
336- dependsOn = [
337- {
338- containerName = " postgres"
339- condition = " HEALTHY"
340- }
341- ]
342- },
343-
344275 # forms-admin-seeding
345276 {
346277 name = " forms-admin-seeding"
0 commit comments