-
Notifications
You must be signed in to change notification settings - Fork 9.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
resource/aws_kinesis_firehose_delivery_stream: Allow processor clearing #11649
resource/aws_kinesis_firehose_delivery_stream: Allow processor clearing #11649
Conversation
References: * hashicorp#11305 If a processor has previously been added to the extended S3 configuration for a Kinesis firehose delivery stream and an attempt is made to remove the processor for a subsequent apply, the stream resource currently attempts to pass in a processor with empty data. The UpdateDestination function in the AWS SDK rejects this processor as invalid per its schema and fails the apply. With the changes in this commit, the stream resource would remove empty processor elements before passing them up to the UpdateDestination call. This allows the empty processor elements to be removed successfully. Output from acceptance testing: ``` make testacc TEST=./aws TESTARGS='-run=TestAccAWSKinesisFirehoseDeliveryStream_' ... --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_missingProcessingConfiguration (72.65s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_OpenXJsonSerDe_Empty (84.32s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_ParquetSerDe_Empty (84.82s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_OrcSerDe_Empty (86.81s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3WithCloudwatchLogging (92.66s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_Serializer_Update (99.07s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_basic (100.02s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_ErrorOutputPrefix (100.22s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_Deserializer_Update (101.59s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3KmsKeyArn (104.93s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_HiveJsonSerDe_Empty (109.56s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3basicWithTags (112.94s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_ExternalUpdate (114.35s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3KinesisStreamSource (117.80s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_SplunkConfigUpdates (125.21s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3Updates (141.99s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3basic (77.82s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3basic (88.79s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3ConfigUpdates (175.05s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3basicWithSSE (199.39s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_Enabled (124.94s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_RedshiftConfigUpdates (566.48s) --- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ElasticsearchConfigUpdates (706.62s) ```
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, thank you for this fix, @camlow325 🚀
Output from acceptance testing:
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3WithCloudwatchLogging (81.42s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_Serializer_Update (98.34s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_OpenXJsonSerDe_Empty (101.10s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_ExternalUpdate (104.11s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_ErrorOutputPrefix (104.91s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3KinesisStreamSource (106.40s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3basic (107.67s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_ParquetSerDe_Empty (110.05s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3KmsKeyArn (116.36s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_Deserializer_Update (118.86s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_basic (121.91s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_OrcSerDe_Empty (122.04s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3basicWithTags (125.74s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_Enabled (127.68s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3basic (130.14s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3_DataFormatConversionConfiguration_HiveJsonSerDe_Empty (131.83s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ExtendedS3Updates (137.09s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3ConfigUpdates (169.04s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_missingProcessingConfiguration (86.67s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_SplunkConfigUpdates (121.74s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_s3basicWithSSE (217.80s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_RedshiftConfigUpdates (451.35s)
--- PASS: TestAccAWSKinesisFirehoseDeliveryStream_ElasticsearchConfigUpdates (1063.42s)
This has been released in version 2.48.0 of the Terraform AWS provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading. For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template for triage. Thanks! |
I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. Thanks! |
Community Note
Closes #11305
Release note for CHANGELOG:
If a processor has previously been added to the extended S3 configuration for a Kinesis firehose delivery stream and an attempt is made to remove the processor for a subsequent apply, the stream resource currently attempts to pass in a processor with empty data. The
UpdateDestination
function in the AWS SDK rejects this processor as invalid per its schema and fails the apply.With the changes in this commit, the stream resource would remove empty processor elements before passing them up to the
UpdateDestination
call. This allows the empty processor elements to be removed successfully.Output from acceptance testing: