From 7e6febac539a5089b1d2f717f123ecd1cf2adfcc Mon Sep 17 00:00:00 2001 From: Cooper Wright Date: Fri, 3 Jul 2026 14:19:32 +0100 Subject: [PATCH 1/4] fix: rebasing --- concourse/scripts/terraform_infra.sh | 3 ++- terraform/env/dev/example_tfvars.txt | 5 +++-- terraform/main.tf | 4 +++- terraform/variables.tf | 17 +++++++++++------ 4 files changed, 19 insertions(+), 10 deletions(-) diff --git a/concourse/scripts/terraform_infra.sh b/concourse/scripts/terraform_infra.sh index b3f65ff..62a35b1 100644 --- a/concourse/scripts/terraform_infra.sh +++ b/concourse/scripts/terraform_infra.sh @@ -12,6 +12,7 @@ aws_secret_access_key=$(echo "$secrets" | jq -r .aws_secret_access_key) lambda_name=$(echo "$secrets" | jq -r .lambda_name) env_name=$(echo "$secrets" | jq -r .env_name) +ecr_repository=$(echo "$secrets" | jq -r .ecr_repository) lambda_timeout=$(echo "$secrets" | jq -r .lambda_timeout) @@ -46,6 +47,6 @@ terraform apply \ -var "github_app_client_id=$github_app_client_id" \ -var "aws_secret_name=$aws_secret_name" \ -var "github_org=$github_org" \ - -var "lambda_version=${tag}" \ -var "lambda_timeout=${lambda_timeout}" \ + -var "ecr_repository=${ecr_repository}" \ -auto-approve diff --git a/terraform/env/dev/example_tfvars.txt b/terraform/env/dev/example_tfvars.txt index 5ac1f6d..83e6615 100644 --- a/terraform/env/dev/example_tfvars.txt +++ b/terraform/env/dev/example_tfvars.txt @@ -5,9 +5,10 @@ aws_secret_access_key = "AWSSECRETASSOCIATEDWITHACCESSKEY" aws_secret_name = "sdp/pem" env_name = "sdp-dev" lambda_name = "copilot-usage-lambda" -lambda_version = "v0.0.1" lambda_arch = "x86_64" lambda_timeout = 300 schedule = "cron(0 6 ? * 2 *)" github_org = "ONS-Innovation" -github_app_client_id = "123456789" \ No newline at end of file +github_app_client_id = "123456789" +ecr_repository = "sdp-dev-address-book-lambda" +container_ver = "v1.0.0" \ No newline at end of file diff --git a/terraform/main.tf b/terraform/main.tf index 20275c5..a0edd8f 100644 --- a/terraform/main.tf +++ b/terraform/main.tf @@ -27,7 +27,7 @@ resource "aws_security_group" "lambda_sg" { resource "aws_lambda_function" "lambda_function" { function_name = var.lambda_name timeout = var.lambda_timeout - image_uri = "${data.aws_ecr_repository.profile_lambda_ecr_repo.repository_url}:${var.lambda_version}" + image_uri = "${data.aws_ecr_repository.profile_lambda_ecr_repo.repository_url}@${data.aws_ecr_image.lambda_image.image_digest}" package_type = "Image" architectures = [var.lambda_arch] logging_config { @@ -55,6 +55,8 @@ resource "aws_lambda_function" "lambda_function" { GITHUB_APP_CLIENT_ID = var.github_app_client_id AWS_SECRET_NAME = var.aws_secret_name AWS_ACCOUNT_NAME = var.env_name + IMAGE_DIGEST = data.aws_ecr_image.lambda_image.image_digest + IMAGE_TAG = var.container_ver } } } diff --git a/terraform/variables.tf b/terraform/variables.tf index adc9a7d..8b4af4b 100644 --- a/terraform/variables.tf +++ b/terraform/variables.tf @@ -30,12 +30,6 @@ variable "lambda_name" { default = "lambda-function" } -variable "lambda_version" { - description = "AWS Lambda Image Version" - type = string - default = "v0.0.1" -} - variable "lambda_arch" { description = "AWS Lambda Architecture" type = string @@ -77,6 +71,17 @@ variable "region" { default = "eu-west-2" } +variable "ecr_repository" { + description = "Name of the ECR repository containing the Lambda image" + type = string +} + +variable "container_ver" { + description = "Container tag" + type = string + default = "v1.0.0" +} + variable "project_tag" { description = "Project" type = string From 2bcb0c61b591b2a6161f0b446d6d073fe7ce6fd6 Mon Sep 17 00:00:00 2001 From: Cooper Wright Date: Fri, 3 Jul 2026 15:17:09 +0100 Subject: [PATCH 2/4] fix: added lambda image --- terraform/data.tf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/terraform/data.tf b/terraform/data.tf index 751e8ac..c849f62 100644 --- a/terraform/data.tf +++ b/terraform/data.tf @@ -2,6 +2,11 @@ data "aws_ecr_repository" "profile_lambda_ecr_repo" { name = local.lambda_repo } +data "aws_ecr_image" "lambda_image" { + repository_name = data.aws_ecr_repository.profile_lambda_ecr_repo.name + image_tag = var.container_ver +} + # Get the ecs infrastructure outputs from the remote state data source data "terraform_remote_state" "vpc" { backend = "s3" From 7bb7937d9dae996285c2c62b7382828043eed80d Mon Sep 17 00:00:00 2001 From: Cooper Wright Date: Fri, 3 Jul 2026 15:44:14 +0100 Subject: [PATCH 3/4] fix: removed duplicate ecr image --- terraform/data.tf | 5 ----- 1 file changed, 5 deletions(-) diff --git a/terraform/data.tf b/terraform/data.tf index c849f62..751e8ac 100644 --- a/terraform/data.tf +++ b/terraform/data.tf @@ -2,11 +2,6 @@ data "aws_ecr_repository" "profile_lambda_ecr_repo" { name = local.lambda_repo } -data "aws_ecr_image" "lambda_image" { - repository_name = data.aws_ecr_repository.profile_lambda_ecr_repo.name - image_tag = var.container_ver -} - # Get the ecs infrastructure outputs from the remote state data source data "terraform_remote_state" "vpc" { backend = "s3" From fe938335ca095b0f7e85aa15c7b646c9803ab6e9 Mon Sep 17 00:00:00 2001 From: Cooper Wright Date: Fri, 3 Jul 2026 15:50:41 +0100 Subject: [PATCH 4/4] fix: removed duplicate ecr image --- terraform/data.tf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/terraform/data.tf b/terraform/data.tf index 751e8ac..c849f62 100644 --- a/terraform/data.tf +++ b/terraform/data.tf @@ -2,6 +2,11 @@ data "aws_ecr_repository" "profile_lambda_ecr_repo" { name = local.lambda_repo } +data "aws_ecr_image" "lambda_image" { + repository_name = data.aws_ecr_repository.profile_lambda_ecr_repo.name + image_tag = var.container_ver +} + # Get the ecs infrastructure outputs from the remote state data source data "terraform_remote_state" "vpc" { backend = "s3"