Skip to content

Commit bbbcc52

Browse files
committed
Remove forms-api task from review apps
Forms-runner now makes requests to forms-admin rather than forms-api to get forms. Update the review apps so that the forms-api container is no longer created and forms-runner makes requests to forms-admin rather than forms-api. We need to also set the `ALLOWED_HOST_PATTERNS` environment variable for the forms-admin container so that it allows requests from forms-runner to localhost:3000 to make requests to the forms-admin API without authorization being required.
1 parent d299986 commit bbbcc52

File tree

2 files changed

+3
-79
lines changed

2 files changed

+3
-79
lines changed

.review_apps/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ The Terraform code in this directory is used to deploy a review copy of `forms-r
55
It constructs a minimal, ephemeral version of a GOV.UK Forms environment in AWS ECS that can be used for reviews, then freely destroyed. This includes:
66

77
* a copy of `forms-runner` at the commit in question
8-
* a copy of the version of `forms-api` currently in production
98
* a copy of the version of `forms-admin` currently in production
109
* a local PostgreSQL database with seed data for both `forms-api` and `forms-admin`
1110
* a local Redis instance of session storage

.review_apps/ecs_task_definition.tf

Lines changed: 3 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ locals {
2222
{ name = "SETTINGS__ANALYTICS_ENABLED", value = "false" },
2323
{ name = "SETTINGS__CLOUDWATCH_METRICS_ENABLED", value = "false" },
2424
{ name = "SETTINGS__FORMS_ADMIN__BASE_URL", value = "https://${local.admin_app_hostname}" },
25-
{ name = "SETTINGS__FORMS_API__BASE_URL", value = "http://localhost:9292" },
25+
{ name = "SETTINGS__FORMS_API__BASE_URL", value = "http://localhost:3000" },
2626
{ name = "SETTINGS__FORMS_ENV", value = "review" },
2727

2828
##
@@ -33,15 +33,6 @@ locals {
3333
##
3434
]
3535

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-
4536
forms_admin_env_vars = [
4637
{ name = "DATABASE_URL", value = "postgres://postgres:postgres@127.0.0.1:5432" },
4738
{ name = "GOVUK_APP_DOMAIN", value = "publishing.service.gov.uk" },
@@ -52,10 +43,9 @@ locals {
5243
{ name = "SECRET_KEY_BASE", value = "unsecured_secret_key_material" },
5344
{ name = "SETTINGS__ACT_AS_USER_ENABLED", value = "true" },
5445
{ 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" },
5746
{ name = "SETTINGS__FORMS_ENV", value = "review" },
5847
{ name = "SETTINGS__FORMS_RUNNER__URL", value = "https://${local.runner_review_app_hostname}" },
48+
{ name = "ALLOWED_HOST_PATTERNS", value = "localhost:3000" }
5949
]
6050
}
6151

@@ -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"
@@ -192,9 +143,9 @@ resource "aws_ecs_task_definition" "task" {
192143
"traefik.http.routers.forms-runner-pr-${var.pull_request_number}-admin-app.rule" : "Host(`${local.admin_app_hostname}`)",
193144
"traefik.http.routers.forms-runner-pr-${var.pull_request_number}-admin-app.service" : "forms-runner-pr-${var.pull_request_number}-admin-app",
194145
"traefik.http.routers.forms-runner-pr-${var.pull_request_number}-admin-app.middlewares" : "forms-runner-pr-${var.pull_request_number}-admin-app@ecs"
195-
196146
"traefik.http.services.forms-runner-pr-${var.pull_request_number}-admin-app.loadbalancer.server.port" : "3000",
197147
"traefik.http.services.forms-runner-pr-${var.pull_request_number}-admin-app.loadbalancer.healthcheck.path" : "/up",
148+
198149
"traefik.enable" : "true",
199150
},
200151

@@ -315,32 +266,6 @@ resource "aws_ecs_task_definition" "task" {
315266
]
316267
},
317268

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-
344269
# forms-admin-seeding
345270
{
346271
name = "forms-admin-seeding"

0 commit comments

Comments
 (0)