Firehose
Delivery streams to S3, Apache Iceberg (S3 Tables), and HTTP; Redshift / OpenSearch / Splunk / Snowflake accepted as metadata.
Quick start
import boto3
fh = boto3.client("firehose", endpoint_url="http://localhost:4566",
region_name="us-east-1",
aws_access_key_id="test", aws_secret_access_key="test")
fh.create_delivery_stream(DeliveryStreamName="d",
S3DestinationConfiguration={"RoleARN":"arn:...","BucketARN":"arn:aws:s3:::bkt"})
fh.put_record(DeliveryStreamName="d", Record={"Data":b"hello"})
Supported operations
12 operations exposed by this service as of MiniStack 1.4.21. Extracted directly from the handler dispatch in the source module.
CreateDeliveryStream
DeleteDeliveryStream
DescribeDeliveryStream
ListDeliveryStreams
ListTagsForDeliveryStream
PutRecord
PutRecordBatch
StartDeliveryStreamEncryption
StopDeliveryStreamEncryption
TagDeliveryStream
UntagDeliveryStream
UpdateDestination
CloudFormation
The CloudFormation engine provisions these resource types via this service:
AWS::KinesisFirehose::DeliveryStream
See CloudFormation engine for intrinsic support and lifecycle details.
Known limitations
- Only S3/ExtendedS3 and Iceberg (S3 Tables) destinations actually write data. Redshift / OpenSearch / Splunk / Snowflake / HTTP destinations are metadata only.
Source
ministack/services/firehose.py
Read the source to verify the ops list above — dispatch tables and handler functions are the ground truth.