hashicorp / terraform-provider-aws

The AWS Provider enables Terraform to manage AWS resources.
https://registry.terraform.io/providers/hashicorp/aws
Mozilla Public License 2.0
9.82k stars 9.16k forks source link

[Enhancement]: Support for new direct to Iceberg streaming destination for aws_kinesis_firehose_delivery_stream #38753

Closed paulcichonski closed 4 days ago

paulcichonski commented 2 months ago

Description

AWS released a new feature of Data Firehose in July 2024 (in Preview) to support writing directly to Iceberg tables.

This issue is to request that the aws_kinesis_firehose_delivery_stream resource be updated to support this new destination configuration.

Affected Resource(s) and/or Data Source(s)

aws_kinesis_firehose_delivery_stream

Potential Terraform Configuration

resource "aws_kinesis_firehose_delivery_stream" "example_iceberg_destination" {
  name        = "example_iceberg_destination"
  destination = "iceberg"

  iceberg_destination_configuration {
    glue_catalog_arn = "string"
    role_arn   = "string"

    buffering_size     = 10
    buffering_interval = 300

    processing_configuration {
      enabled = "true"

      processors {
        type = "Lambda"

        parameters {
          parameter_name  = "LambdaArn"
          parameter_value = "${aws_lambda_function.lambda_processor.arn}:$LATEST"
        }
      }
    }

    destination_table_configuration {
      destination_tables = [
        {
          destination_database_name = "string"
          destination_table_name = "string"
          s3_error_output_prefix = "string"
          unique_keys = ["string"]
        }
      ]
    }

    retry_options {
      duration_in_seconds = 100
    }

    s3_backup_mode = "FailedDataOnly"
    s3_configuration {
      role_arn            = "string"
      bucket_arn          = "string"
      prefix              = "string"
      error_output_prefix = "string"
      buffering_hints {
        size_in_mbs         = 10
        interval_in_seconds = 300
      }
      compression_format = "UNCOMPRESSED"
      encryption_configuration {
        no_encryption_config = "NoEncryption"
        kms_encryption_config {
          aws_kms_key_arn = "string"
        }
      }
      cloud_watch_logging_options {
        enabled         = true
        log_group_name  = "string"
        log_stream_name = "string"
      }
    }

  }
}

References

Preview Docs: https://docs.aws.amazon.com/firehose/latest/dev/apache-iceberg-destination.html

I haven't found an official blog post yet.

Would you like to implement a fix?

No

github-actions[bot] commented 2 months ago

Community Note

Voting for Prioritization

Volunteering to Work on This Issue

tgorton617 commented 2 weeks ago

This Data Firehose feature is now GA - product announcement

github-actions[bot] commented 4 days ago

[!WARNING] This issue has been closed, meaning that any additional comments are hard for our team to see. Please assume that the maintainers will not see them.

Ongoing conversations amongst community members are welcome, however, the issue will be locked after 30 days. Moving conversations to another venue, such as the AWS Provider forum, is recommended. If you have additional concerns, please open a new issue, referencing this one where needed.

github-actions[bot] commented 3 days ago

This functionality has been released in v5.73.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. Thank you!