Skip to content

Latest commit

 

History

History
89 lines (64 loc) · 3.51 KB

README.md

File metadata and controls

89 lines (64 loc) · 3.51 KB

Terraform Module Tests

AWS Kinesis Stream Terraform module

Terraform module which creates Kinesis Stream resources on AWS.

This type of resources are supported:

Terraform version

Terraform 0.12. Module version to ~> v2.0.

Usage

module "kinesis-stream" {

  source  = "rodrigodelmonte/kinesis-stream/aws"
  version = "v2.0.3"

  name                      = "kinesis_stream_example"
  shard_count               = 1
  retention_period          = 24
  shard_level_metrics       = ["IncomingBytes", "OutgoingBytes"]
  enforce_consumer_deletion = false
  encryption_type           = "KMS"
  kms_key_id                = "alias/aws/kinesis"
  tags                      = {
      Name = "kinesis_stream_example"
  }

}

Providers

Name Version
aws ~> 2.23

Inputs

Name Description Type Default Required
create_policy_admin Whether to create IAM Policy (ARN) admin of the Stream bool true no
create_policy_read_only Whether to create IAM Policy (ARN) read only of the Stream bool true no
create_policy_write_only Whether to create IAM Policy (ARN) write only of the Stream bool true no
encryption_type The encryption type to use. The only acceptable values are NONE or KMS. string "NONE" no
enforce_consumer_deletion A boolean that indicates all registered consumers should be deregistered from the stream so that the stream can be destroyed without error. bool false no
kms_key_id The GUID for the customer-managed KMS key to use for encryption. You can also use a Kinesis-owned master key by specifying the alias alias/aws/kinesis. string "" no
name A name to identify the stream. This is unique to the AWS account and region the Stream is created in. string n/a yes
retention_period Length of time data records are accessible after they are added to the stream. The maximum value of a stream's retention period is 168 hours. Minimum value is 24. Default is 24. number 24 no
shard_count The number of shards that the stream will use number 1 no
shard_level_metrics A list of shard-level CloudWatch metrics which can be enabled for the stream. list(string) [] no
tags A mapping of tags to assign to the resource. map n/a yes

Outputs

Name Description
kinesis_stream_arn The Amazon Resource Name (ARN) specifying the Stream
kinesis_stream_iam_policy_admin_arn The IAM Policy (ARN) admin of the Stream
kinesis_stream_iam_policy_read_only_arn The IAM Policy (ARN) read only of the Stream
kinesis_stream_iam_policy_write_only_arn The IAM Policy (ARN) write only of the Stream
kinesis_stream_name The unique Kinesis stream name
kinesis_stream_shard_count The count of shards for this Kinesis stream

Tests

This module has been tested using Terratest

# Install requirements
cd test/
go mod init
# Run tests
go test -v -timeout 30m

Authors

Module is maintained by Rodrigo Del Monte and Bruno R. Dias

License

Apache 2 Licensed. See LICENSE for full details.