From b5525db8106702fd37fcfaf98277912b3458bdc3 Mon Sep 17 00:00:00 2001 From: Federico Ravasio Date: Sun, 24 Oct 2021 18:22:29 +0000 Subject: [PATCH 1/2] add `image_uri` to data source `aws_lambda_function` --- .changelog/21015.txt | 3 +++ internal/service/lambda/function_data_source.go | 4 ++++ internal/service/lambda/function_data_source_test.go | 1 + website/docs/d/lambda_function.html.markdown | 1 + 4 files changed, 9 insertions(+) create mode 100644 .changelog/21015.txt diff --git a/.changelog/21015.txt b/.changelog/21015.txt new file mode 100644 index 000000000000..b62e1182b499 --- /dev/null +++ b/.changelog/21015.txt @@ -0,0 +1,3 @@ +```release-note:enhancement +data source/aws_lambda_function: Add `image_uri` attribute +``` diff --git a/internal/service/lambda/function_data_source.go b/internal/service/lambda/function_data_source.go index f6c215d08bc9..4cb7f8476631 100644 --- a/internal/service/lambda/function_data_source.go +++ b/internal/service/lambda/function_data_source.go @@ -191,6 +191,10 @@ func DataSourceFunction() *schema.Resource { Type: schema.TypeString, }, }, + "image_uri": { + Type: schema.TypeString, + Computed: true, + }, }, } } diff --git a/internal/service/lambda/function_data_source_test.go b/internal/service/lambda/function_data_source_test.go index c7e3f40b959a..e65da086c925 100644 --- a/internal/service/lambda/function_data_source_test.go +++ b/internal/service/lambda/function_data_source_test.go @@ -46,6 +46,7 @@ func TestAccLambdaFunctionDataSource_basic(t *testing.T) { resource.TestCheckResourceAttrPair(dataSourceName, "signing_profile_version_arn", resourceName, "signing_profile_version_arn"), resource.TestCheckResourceAttrPair(dataSourceName, "signing_job_arn", resourceName, "signing_job_arn"), resource.TestCheckResourceAttrPair(dataSourceName, "code_signing_config_arn", resourceName, "code_signing_config_arn"), + resource.TestCheckResourceAttrPair(dataSourceName, "image_uri", resourceName, "image_uri"), ), }, }, diff --git a/website/docs/d/lambda_function.html.markdown b/website/docs/d/lambda_function.html.markdown index ed59752bf652..6c9a8d3f5554 100644 --- a/website/docs/d/lambda_function.html.markdown +++ b/website/docs/d/lambda_function.html.markdown @@ -41,6 +41,7 @@ In addition to all arguments above, the following attributes are exported: * `environment` - The Lambda environment's configuration settings. * `file_system_config` - The connection settings for an Amazon EFS file system. * `handler` - The function entrypoint in your code. +* `image_uri` - The URI of the container image. * `invoke_arn` - The ARN to be used for invoking Lambda Function from API Gateway. * `kms_key_arn` - The ARN for the KMS encryption key. * `last_modified` - The date this resource was last modified. From 5d7f8b6d36490ddd8d1671a28773ec5c32afe5a5 Mon Sep 17 00:00:00 2001 From: Angie Pinilla Date: Wed, 24 Nov 2021 18:19:07 -0500 Subject: [PATCH 2/2] CR updates --- internal/service/lambda/function_data_source.go | 4 ++++ internal/service/lambda/function_data_source_test.go | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/internal/service/lambda/function_data_source.go b/internal/service/lambda/function_data_source.go index 4cb7f8476631..bc4d18766aa6 100644 --- a/internal/service/lambda/function_data_source.go +++ b/internal/service/lambda/function_data_source.go @@ -262,6 +262,10 @@ func dataSourceFunctionRead(d *schema.ResourceData, meta interface{}) error { d.Set("kms_key_arn", function.KMSKeyArn) d.Set("last_modified", function.LastModified) + if output.Code != nil { + d.Set("image_uri", output.Code.ImageUri) + } + if err := d.Set("layers", flattenLayers(function.Layers)); err != nil { return fmt.Errorf("Error setting layers for Lambda Function (%s): %w", d.Id(), err) } diff --git a/internal/service/lambda/function_data_source_test.go b/internal/service/lambda/function_data_source_test.go index e65da086c925..dffeb978e304 100644 --- a/internal/service/lambda/function_data_source_test.go +++ b/internal/service/lambda/function_data_source_test.go @@ -46,7 +46,6 @@ func TestAccLambdaFunctionDataSource_basic(t *testing.T) { resource.TestCheckResourceAttrPair(dataSourceName, "signing_profile_version_arn", resourceName, "signing_profile_version_arn"), resource.TestCheckResourceAttrPair(dataSourceName, "signing_job_arn", resourceName, "signing_job_arn"), resource.TestCheckResourceAttrPair(dataSourceName, "code_signing_config_arn", resourceName, "code_signing_config_arn"), - resource.TestCheckResourceAttrPair(dataSourceName, "image_uri", resourceName, "image_uri"), ), }, }, @@ -207,6 +206,7 @@ func TestAccLambdaFunctionDataSource_image(t *testing.T) { Config: testAccFunctionImageDataSourceConfig(rName, imageLatestID), Check: resource.ComposeTestCheckFunc( resource.TestCheckResourceAttrPair(dataSourceName, "code_signing_config_arn", resourceName, "code_signing_config_arn"), + resource.TestCheckResourceAttrPair(dataSourceName, "image_uri", resourceName, "image_uri"), ), }, },