diff --git a/.changelog/44500.txt b/.changelog/44500.txt new file mode 100644 index 000000000000..6a9032562630 --- /dev/null +++ b/.changelog/44500.txt @@ -0,0 +1,3 @@ +```release-note:bug +resource/aws_lb_target_group: Suppress diff for `stickiness`, `target_failover`, and `target_group_health` attributes when `target_type` is `lambda` +``` \ No newline at end of file diff --git a/internal/service/elbv2/target_group.go b/internal/service/elbv2/target_group.go index d5b051f0e2d5..ba77fb7546f8 100644 --- a/internal/service/elbv2/target_group.go +++ b/internal/service/elbv2/target_group.go @@ -258,10 +258,11 @@ func resourceTargetGroup() *schema.Resource { ), }, "stickiness": { - Type: schema.TypeList, - Optional: true, - Computed: true, - MaxItems: 1, + Type: schema.TypeList, + Optional: true, + Computed: true, + MaxItems: 1, + DiffSuppressFunc: suppressIfTargetType(awstypes.TargetTypeEnumLambda), Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "cookie_duration": { @@ -297,9 +298,10 @@ func resourceTargetGroup() *schema.Resource { names.AttrTags: tftags.TagsSchema(), names.AttrTagsAll: tftags.TagsSchemaComputed(), "target_failover": { - Type: schema.TypeList, - Optional: true, - Computed: true, + Type: schema.TypeList, + Optional: true, + Computed: true, + DiffSuppressFunc: suppressIfTargetType(awstypes.TargetTypeEnumLambda), Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "on_deregistration": { @@ -316,10 +318,11 @@ func resourceTargetGroup() *schema.Resource { }, }, "target_group_health": { - Type: schema.TypeList, - Optional: true, - Computed: true, - MaxItems: 1, + Type: schema.TypeList, + Optional: true, + Computed: true, + MaxItems: 1, + DiffSuppressFunc: suppressIfTargetType(awstypes.TargetTypeEnumLambda), Elem: &schema.Resource{ Schema: map[string]*schema.Schema{ "dns_failover": {