awscc_mediaconnect_flow_output creates an srt-listener resource successfully, but saves it as "tainted", limiting further changes. #2169
Labels
bug
service/mediaconnect
upstream-aws
Unable to proceed due to missing or broken functionality from an AWS dependency.
I have an issue with awscc_mediaconnect_flow_output. The resource gets created successfully, but because of the error, future actions performed on the resource are impossible. It is complaining that AWS doesn't return a value for vpc_interface_attachment, even though that value is optional and I don't need it:
Community Note
Terraform CLI and Terraform AWS Cloud Control Provider Version
Terraform v1.10.5
on darwin_arm64
Affected Resource(s)
Terraform Configuration Files
Debug Output
2025-01-22T15:17:54.328-0700 [DEBUG] ReferenceTransformer: "awscc_mediaconnect_flow_output.example" references: []
awscc_mediaconnect_flow_output.example: Refreshing state... [id=arn:aws:mediaconnect:us-east-1:12345678912:output:1-ClEPXFZUA11UVg5T-4e45cd624000:srt-listener-output]
2025-01-22T15:17:54.404-0700 [DEBUG] provider.terraform-provider-awscc_v1.26.0_x5: Request.State.Raw: @module=awscc cfn_type=AWS::MediaConnect::FlowOutput tf_provider_addr=registry.terraform.io/hashicorp/awscc tf_req_id=1dff682b-3913-6dfd-5e4a-761ff4d449df tf_resource_type=awscc_mediaconnect_flow_output tf_rpc=ReadResource @caller=github.com/hashicorp/terraform-provider-awscc/internal/generic/resource.go:442 value="tftypes.Object["cidr_allow_list":tftypes.List[tftypes.String], "description":tftypes.String, "destination":tftypes.String, "encryption":tftypes.Object["algorithm":tftypes.String, "key_type":tftypes.String, "role_arn":tftypes.String, "secret_arn":tftypes.String], "flow_arn":tftypes.String, "id":tftypes.String, "max_latency":tftypes.Number, "media_stream_output_configurations":tftypes.List[tftypes.Object["destination_configurations":tftypes.List[tftypes.Object["destination_ip":tftypes.String, "destination_port":tftypes.Number, "interface":tftypes.Object["name":tftypes.String]]], "encoding_name":tftypes.String, "encoding_parameters":tftypes.Object["compression_factor":tftypes.Number, "encoder_profile":tftypes.String], "media_stream_name":tftypes.String]], "min_latency":tftypes.Number, "name":tftypes.String, "output_arn":tftypes.String, "output_status":tftypes.String, "port":tftypes.Number, "protocol":tftypes.String, "remote_id":tftypes.String, "smoothing_latency":tftypes.Number, "stream_id":tftypes.String, "vpc_interface_attachment":tftypes.Object["vpc_interface_name":tftypes.String]]<"cidr_allow_list":tftypes.List[tftypes.String]<tftypes.String<"0.0.0.0/0">>, "description":tftypes.String<"SRT Listener Output">, "destination":tftypes.String, "encryption":tftypes.Object["algorithm":tftypes.String, "key_type":tftypes.String, "role_arn":tftypes.String, "secret_arn":tftypes.String], "flow_arn":tftypes.String<"arn:aws:mediaconnect:us-east-1:12345678912:flow:1-ClEPXFZUA11UVg5T-4e45cd624000:example">, "id":tftypes.String<"arn:aws:mediaconnect:us-east-1:12345678912:output:1-ClEPXFZUA11UVg5T-4e45cd624000:srt-listener-output">, "max_latency":tftypes.Number, "media_stream_output_configurations":tftypes.List[tftypes.Object["destination_configurations":tftypes.List[tftypes.Object["destination_ip":tftypes.String, "destination_port":tftypes.Number, "interface":tftypes.Object["name":tftypes.String]]], "encoding_name":tftypes.String, "encoding_parameters":tftypes.Object["compression_factor":tftypes.Number, "encoder_profile":tftypes.String], "media_stream_name":tftypes.String]], "min_latency":tftypes.Number<"200">, "name":tftypes.String<"srt-listener-output">, "output_arn":tftypes.String, "output_status":tftypes.String, "port":tftypes.Number<"8888">, "protocol":tftypes.String<"srt-listener">, "remote_id":tftypes.String, "smoothing_latency":tftypes.Number, "stream_id":tftypes.String, "vpc_interface_attachment":tftypes.Object["vpc_interface_name":tftypes.String]>" timestamp=2025-01-22T15:17:54.404-0700
Panic Output
After the apply operation, the provider still indicated an unknown value
│ for
│ awscc_mediaconnect_flow_output.example.vpc_interface_attachment.
│ All values must be known after apply, so this is always a bug in the
│ provider and should be reported in the provider's own repository.
│ Terraform will still save the other known object values in the state.
Expected Behavior
Terraform should have ignored the null value for vpc_interface_attachment because it is not required for this type of output.
Actual Behavior
The resource was successfully created, but it was stored in a "tainted" state, so that no further action could be performed on the resource.
Steps to Reproduce
terraform apply
Important Factoids
none
References
The text was updated successfully, but these errors were encountered: