From 973a5bb3cb28893dba72c87a35b377a20ab63578 Mon Sep 17 00:00:00 2001 From: Rustam Aliyev Date: Mon, 4 Jul 2022 01:06:52 +0100 Subject: [PATCH 1/2] Get latest version number of aws_lambda_function To associate a lambda function to CloudFront distribution as a Lambda@Edge (using a cache behiavor's lambda_function_association block), it is required to provide a numbered version. The `qualified_arn`, unfortunately, always returns `$LATEST` which is not supported by Lambda@Edge. There appears to be no easy way to query `aws_lambda_function.version` either. See: https://github.com/hashicorp/terraform-provider-aws/issues/10038 https://github.com/hashicorp/terraform-provider-aws/issues/25448 --- outputs.tf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/outputs.tf b/outputs.tf index a1dac64..320a962 100644 --- a/outputs.tf +++ b/outputs.tf @@ -13,6 +13,11 @@ output "qualified_arn" { value = local.enabled ? aws_lambda_function.this[0].qualified_arn : null } +output "version" { + description = "Latest published version of your Lambda Function (if versioning is enabled via publish = true)" + value = local.enabled ? aws_lambda_function.this[0].version : null +} + output "function_name" { description = "Lambda function name" value = local.enabled ? aws_lambda_function.this[0].function_name : null From 32f20824804f4c5e788121bf2fd3cfe69ef335eb Mon Sep 17 00:00:00 2001 From: cloudpossebot <11232728+cloudpossebot@users.noreply.github.com> Date: Mon, 4 Jul 2022 00:08:59 +0000 Subject: [PATCH 2/2] Auto Format --- README.md | 1 + docs/terraform.md | 1 + 2 files changed, 2 insertions(+) diff --git a/README.md b/README.md index 0c63b84..3882bbd 100644 --- a/README.md +++ b/README.md @@ -241,6 +241,7 @@ Available targets: | [qualified\_arn](#output\_qualified\_arn) | ARN identifying your Lambda Function Version (if versioning is enabled via publish = true) | | [role\_arn](#output\_role\_arn) | Lambda IAM role ARN | | [role\_name](#output\_role\_name) | Lambda IAM role name | +| [version](#output\_version) | Latest published version of your Lambda Function (if versioning is enabled via publish = true) | diff --git a/docs/terraform.md b/docs/terraform.md index 6807440..21e684f 100644 --- a/docs/terraform.md +++ b/docs/terraform.md @@ -106,4 +106,5 @@ | [qualified\_arn](#output\_qualified\_arn) | ARN identifying your Lambda Function Version (if versioning is enabled via publish = true) | | [role\_arn](#output\_role\_arn) | Lambda IAM role ARN | | [role\_name](#output\_role\_name) | Lambda IAM role name | +| [version](#output\_version) | Latest published version of your Lambda Function (if versioning is enabled via publish = true) |