diff --git a/modules/lambda-registrator/variables.tf b/modules/lambda-registrator/variables.tf index 4816308..e230f34 100644 --- a/modules/lambda-registrator/variables.tf +++ b/modules/lambda-registrator/variables.tf @@ -153,7 +153,7 @@ variable "arch" { description = "Lambda Architecture. Valid values are arm64 and x86_64" validation { - condition = can(regex("^(arm64|x86_64)$", var.arch)) + condition = contains(["arm64", "x86_64"], var.arch) error_message = "Invalid value for 'arch', options: 'arm64', 'x86_64'." } } \ No newline at end of file diff --git a/test/acceptance/tests/basic_test.go b/test/acceptance/tests/basic_test.go index c6afdeb..4a58960 100644 --- a/test/acceptance/tests/basic_test.go +++ b/test/acceptance/tests/basic_test.go @@ -62,9 +62,6 @@ func TestBasic(t *testing.T) { for name, c := range cases { t.Run(name, func(t *testing.T) { config := suite.Config() - if config.Arch == "arm64" && c.autoPublishRegistrator { - t.Skip("skipping since we currently dont have arm64 ecr images of lambda registrator") - } tfVars := config.TFVars() tfVars["secure"] = c.secure tfVars["arch"] = config.Arch @@ -92,6 +89,7 @@ func TestBasic(t *testing.T) { if c.autoPublishRegistrator { tfVars["enable_auto_publish_ecr_image"] = true + tfVars["consul_lambda_registrator_image"] = config.ECRImageURI if c.privateEcrRepoName != "" { tfVars["private_ecr_repo_name"] = c.privateEcrRepoName } diff --git a/test/acceptance/tests/setup/main.tf b/test/acceptance/tests/setup/main.tf index 60e534d..52e931e 100644 --- a/test/acceptance/tests/setup/main.tf +++ b/test/acceptance/tests/setup/main.tf @@ -76,4 +76,5 @@ module "lambda-registration" { consul_extension_data_prefix = "/${var.suffix}" private_ecr_repo_name = var.private_ecr_repo_name arch = var.arch == "arm64" ? "arm64" : "x86_64" + consul_lambda_registrator_image = var.consul_lambda_registrator_image } diff --git a/test/acceptance/tests/setup/variables.tf b/test/acceptance/tests/setup/variables.tf index c0c2f65..1734c6b 100644 --- a/test/acceptance/tests/setup/variables.tf +++ b/test/acceptance/tests/setup/variables.tf @@ -84,4 +84,15 @@ variable "arch" { type = string default = "x86_64" description = "Lambda Architecture" +} + +variable "consul_lambda_registrator_image" { + description = "The Lambda registrator image to use. Must be provided as " + type = string + default = "public.ecr.aws/hashicorp/consul-lambda-registrator:0.1.0-beta4" + + validation { + condition = can(regex("^[a-zA-Z0-9_.-]+/[a-z0-9_.-]+/[a-z0-9_.-]+:[a-zA-Z0-9_.-]+$", var.consul_lambda_registrator_image)) + error_message = "Image format of 'consul_lambda_registrator_image' is invalid. It must be in the format 'registry/repository:tag'." + } } \ No newline at end of file