From c0e444fccbe597a6d19c2d401c8faacc26037452 Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Tue, 7 Jul 2026 14:40:33 +0000 Subject: [PATCH] abri_api not abri --- .github/workflows/deploy_terraform.yml | 2 +- applications/abri/handler.py | 6 ++++-- .../lambda/{abri => abri_api}/main.tf | 2 +- .../lambda/{abri => abri_api}/outputs.tf | 4 ++-- .../lambda/{abri => abri_api}/provider.tf | 0 .../lambda/{abri => abri_api}/variables.tf | 2 +- .../terraform/lambda/hubspot_deal_etl/main.tf | 8 ++++---- deployment/terraform/shared/main.tf | 6 +++--- etl/hubspot/tests/test_scraper_handler.py | 18 ++++++++---------- .../utilities/aws_lambda/test_task_handler.py | 4 ++-- 10 files changed, 26 insertions(+), 26 deletions(-) rename deployment/terraform/lambda/{abri => abri_api}/main.tf (98%) rename deployment/terraform/lambda/{abri => abri_api}/outputs.tf (74%) rename deployment/terraform/lambda/{abri => abri_api}/provider.tf (100%) rename deployment/terraform/lambda/{abri => abri_api}/variables.tf (98%) diff --git a/.github/workflows/deploy_terraform.yml b/.github/workflows/deploy_terraform.yml index a8b23bf9e..510ac147a 100644 --- a/.github/workflows/deploy_terraform.yml +++ b/.github/workflows/deploy_terraform.yml @@ -718,7 +718,7 @@ jobs: # ============================================================ # Deploy Abri Lambda # ============================================================ - abri_lambda: + abri_api_lambda: needs: [abri_image, determine_stage] uses: ./.github/workflows/_deploy_lambda.yml with: diff --git a/applications/abri/handler.py b/applications/abri/handler.py index bb6d6fe70..d9a80ae63 100644 --- a/applications/abri/handler.py +++ b/applications/abri/handler.py @@ -31,7 +31,7 @@ from utilities.logger import setup_logger logger = setup_logger() -@task_handler(task_source="abri", source=Source.HUBSPOT_DEAL) +@task_handler(task_source="abri_api", source=Source.HUBSPOT_DEAL) def handler(body: dict[str, Any], context: Any) -> Dict[str, str]: request = AbriTriggerRequest.model_validate(body) @@ -53,5 +53,7 @@ def handler(body: dict[str, Any], context: Any) -> Dict[str, str]: ) summary = dispatch_abri_flows(request, orchestrator, deal_database) - logger.info("Abri flows completed for deal %s: %s", request.hubspot_deal_id, summary) + logger.info( + "Abri flows completed for deal %s: %s", request.hubspot_deal_id, summary + ) return summary diff --git a/deployment/terraform/lambda/abri/main.tf b/deployment/terraform/lambda/abri_api/main.tf similarity index 98% rename from deployment/terraform/lambda/abri/main.tf rename to deployment/terraform/lambda/abri_api/main.tf index 205e38eac..a7bb1d6cf 100644 --- a/deployment/terraform/lambda/abri/main.tf +++ b/deployment/terraform/lambda/abri_api/main.tf @@ -9,7 +9,7 @@ locals { module "lambda" { source = "../../modules/lambda_with_sqs" - name = "abri" + name = "abri_api" stage = var.stage image_uri = local.image_uri diff --git a/deployment/terraform/lambda/abri/outputs.tf b/deployment/terraform/lambda/abri_api/outputs.tf similarity index 74% rename from deployment/terraform/lambda/abri/outputs.tf rename to deployment/terraform/lambda/abri_api/outputs.tf index aae33f3a5..7bbe29cd3 100644 --- a/deployment/terraform/lambda/abri/outputs.tf +++ b/deployment/terraform/lambda/abri_api/outputs.tf @@ -1,9 +1,9 @@ -output "abri_queue_url" { +output "abri_api_queue_url" { value = module.lambda.queue_url description = "URL of the Abri SQS queue" } -output "abri_queue_arn" { +output "abri_api_queue_arn" { value = module.lambda.queue_arn description = "ARN of the Abri SQS queue" } diff --git a/deployment/terraform/lambda/abri/provider.tf b/deployment/terraform/lambda/abri_api/provider.tf similarity index 100% rename from deployment/terraform/lambda/abri/provider.tf rename to deployment/terraform/lambda/abri_api/provider.tf diff --git a/deployment/terraform/lambda/abri/variables.tf b/deployment/terraform/lambda/abri_api/variables.tf similarity index 98% rename from deployment/terraform/lambda/abri/variables.tf rename to deployment/terraform/lambda/abri_api/variables.tf index bef54cc41..e431db62b 100644 --- a/deployment/terraform/lambda/abri/variables.tf +++ b/deployment/terraform/lambda/abri_api/variables.tf @@ -1,7 +1,7 @@ variable "lambda_name" { type = string description = "Logical name of the lambda" - default = "abri" + default = "abri_api" } variable "stage" { diff --git a/deployment/terraform/lambda/hubspot_deal_etl/main.tf b/deployment/terraform/lambda/hubspot_deal_etl/main.tf index 76459b9a4..0c06ea7c0 100644 --- a/deployment/terraform/lambda/hubspot_deal_etl/main.tf +++ b/deployment/terraform/lambda/hubspot_deal_etl/main.tf @@ -25,10 +25,10 @@ data "terraform_remote_state" "magic_plan" { } } -data "terraform_remote_state" "abri" { +data "terraform_remote_state" "abri_api" { backend = "s3" config = { - bucket = "abri-terraform-state" + bucket = "abri-api-terraform-state" key = "env:/${var.stage}/terraform.tfstate" region = "eu-west-2" } @@ -68,7 +68,7 @@ module "hubspot_deal_etl" { PASHUB_TO_ARA_SQS_URL = data.terraform_remote_state.pashub_to_ara.outputs.pashub_to_ara_queue_url MAGICPLAN_SQS_URL = data.terraform_remote_state.magic_plan.outputs.magic_plan_queue_url - ABRI_SQS_URL = data.terraform_remote_state.abri.outputs.abri_queue_url + ABRI_SQS_URL = data.terraform_remote_state.abri.outputs.abri_api_queue_url } } @@ -118,7 +118,7 @@ module "hubspot_deal_etl_abri_sqs_policy" { policy_name = "hubspot-deal-etl-abri-sqs-send-${var.stage}" policy_description = "Allow HubSpot ETL Lambda to send messages to the Abri queue" actions = ["sqs:SendMessage"] - resources = [data.terraform_remote_state.abri.outputs.abri_queue_arn] + resources = [data.terraform_remote_state.abri.outputs.abri_api_queue_arn] } resource "aws_iam_role_policy_attachment" "hubspot_deal_etl_abri_sqs_send" { diff --git a/deployment/terraform/shared/main.tf b/deployment/terraform/shared/main.tf index 5cb1a93ac..b4cdafbcc 100644 --- a/deployment/terraform/shared/main.tf +++ b/deployment/terraform/shared/main.tf @@ -898,13 +898,13 @@ output "modelling_e2e_ecr_url" { ################################################ # Abri OpenHousing – Lambda ################################################ -module "abri_state_bucket" { +module "abri_api_state_bucket" { source = "../modules/tf_state_bucket" bucket_name = "abri-terraform-state" } -module "abri_registry" { +module "abri_api_registry" { source = "../modules/container_registry" - name = "abri" + name = "abri_api" stage = var.stage } diff --git a/etl/hubspot/tests/test_scraper_handler.py b/etl/hubspot/tests/test_scraper_handler.py index 9963aa0e1..c047153bb 100644 --- a/etl/hubspot/tests/test_scraper_handler.py +++ b/etl/hubspot/tests/test_scraper_handler.py @@ -12,10 +12,8 @@ DEAL_ID = "999" PASHUB_LINK = "https://pashub.example.com/deal/999" MAGICPLAN_QUEUE_URL = "https://sqs.eu-west-2.amazonaws.com/123/magic-plan-dev" PASHUB_QUEUE_URL = "https://sqs.test/pashub" -ABRI_QUEUE_URL = "https://sqs.test/abri" -ABRI_PROJECT_CODE = ( - "[Abri Stock Condition - Privately Funded - 062026 - 1247536318670]" -) +ABRI_API_QUEUE_URL = "https://sqs.test/abri" +ABRI_PROJECT_CODE = "[Abri Stock Condition - Privately Funded - 062026 - 1247536318670]" PROJECT = {"project_id": "proj-1", "name": "Project One"} @@ -63,7 +61,7 @@ def run_handler( mock_boto3.client.return_value = mock_sqs mock_settings.return_value.MAGICPLAN_SQS_URL = MAGICPLAN_QUEUE_URL mock_settings.return_value.PASHUB_TO_ARA_SQS_URL = PASHUB_QUEUE_URL - mock_settings.return_value.ABRI_SQS_URL = ABRI_QUEUE_URL + mock_settings.return_value.ABRI_SQS_URL = ABRI_API_QUEUE_URL handler.__wrapped__({"hubspot_deal_id": DEAL_ID}, "") @@ -131,7 +129,9 @@ def test_existing_deal_surveyed_transition__sends_magicplan_sqs() -> None: listing = {"national_uprn": UPRN} # Act - mock_sqs, _ = run_handler(hubspot_deal=hubspot_deal, db_deal=db_deal, listing=listing) + mock_sqs, _ = run_handler( + hubspot_deal=hubspot_deal, db_deal=db_deal, listing=listing + ) # Assert mock_sqs.send_message.assert_called_once_with( @@ -241,9 +241,7 @@ def test_existing_deal_pashub_link_unchanged__no_pashub_sqs() -> None: def test_existing_abri_deal_first_survey_date__sends_abri_sqs() -> None: # Arrange - db_deal = make_db_deal( - project_code=ABRI_PROJECT_CODE, confirmed_survey_date=None - ) + db_deal = make_db_deal(project_code=ABRI_PROJECT_CODE, confirmed_survey_date=None) hubspot_deal = make_hubspot_deal( project_code=ABRI_PROJECT_CODE, confirmed_survey_date="2026-06-24", @@ -258,7 +256,7 @@ def test_existing_abri_deal_first_survey_date__sends_abri_sqs() -> None: # Assert mock_sqs.send_message.assert_called_once_with( - QueueUrl=ABRI_QUEUE_URL, + QueueUrl=ABRI_API_QUEUE_URL, MessageBody=json.dumps( { "hubspot_deal_id": DEAL_ID, diff --git a/tests/utilities/aws_lambda/test_task_handler.py b/tests/utilities/aws_lambda/test_task_handler.py index 1d9ad84cd..5ab28a2ff 100644 --- a/tests/utilities/aws_lambda/test_task_handler.py +++ b/tests/utilities/aws_lambda/test_task_handler.py @@ -110,7 +110,7 @@ def test_task_handler_reports_an_ordinarily_failing_record_for_redelivery( ) -> None: # Arrange @task_handler( - task_source="abri", + task_source="abri_api", source=Source.HUBSPOT_DEAL, orchestrator_cm=harness.factory, ) @@ -133,7 +133,7 @@ def test_task_handler_does_not_requeue_a_record_failing_non_retriably( ) -> None: # Arrange @task_handler( - task_source="abri", + task_source="abri_api", source=Source.HUBSPOT_DEAL, orchestrator_cm=harness.factory, )