microservice
Flaconi/microservice/aws
Boilerplate Terraform Module for creating resources for typical micro services.
Microservice Boilerplate     This Terraform module can create typical resources needed for most microservices. Examples DynamoDB IAM RDS Redis S3 SQS Usage DynamoDB Microservice ``hcl module "microservice" { source = "github.com/flaconi/terraform-aws-microservice" env = "playground" name = "sample" # iam_user_enabled creates an user with keys, with iam_role_enabled the user can switch into the role created by iam_role_enabled # For this example we're only creating a role with access to Dynamodb
| Name | Type | Description | Default |
|---|---|---|---|
| tags | map(any) | tags to propagate to the resources | required |
| sqs2_enabled | bool | Set to false to prevent the module from creating any sqs resources | false |
| sqs4_max_message_size | number | The number of seconds Amazon SQS retains a message. Integer representing seconds | 262144 |
| iam_role_principals_arns | list(string) | List of ARNs to allow assuming the iam role. Could be AWS services or accounts, | [] |
| dynamodb_autoscale_read_target | number | The target value for DynamoDB read autoscaling | 50 |
| dynamodb2_enabled | bool | Set to false to prevent the module from creating any dynamodb resources | false |
| rds_enabled | bool | Set to false to prevent the module from creating any rds resources | false |
| rds_performance_insights_retention_period | number | The amount of time in days to retain Performance Insights data. Either 7 (7 days | 7 |
| sqs3_enabled | bool | Set to false to prevent the module from creating any sqs resources | false |
| sqs4_receive_wait_time_seconds | number | The time for which a ReceiveMessage call will wait for a message to arrive (long | 0 |
| dynamodb3_hash_key | string | DynamoDB table Hash Key | "" |
| dynamodb4_billing | string | DynamoDB Billing mode. Can be PROVISIONED or PAY_PER_REQUEST | "PROVISIONED" |
| rds_final_snapshot_identifier_override | string | RDS final snapshot identifier override. | "" |
| sqs4_dlq_enabled | bool | Set to false to prevent the module from creating any sqs-dql resources | false |
| dynamodb2_range_key_type | string | Range Key type, which must be a scalar type: `S`, `N`, or `B` for (S)tring, (N)u | "S" |
| dynamodb3_range_key | string | DynamoDB table Range Key | "" |
| dynamodb4_name_override | string | define dynamodb4_name_override to set a name differnt from var.name | "" |
| redis_multi_az_enabled | bool | Specifies whether to enable Multi-AZ Support for the replication group. If true, | false |
| rds_option_group_use_name_prefix | bool | Determines whether to use `option_group_name` as is or create a unique name begi | true |
| sqs5_name_override | string | define sqs5_name_override to set a name differnt from var.name | "" |
| sqs5_receive_wait_time_seconds | number | The time for which a ReceiveMessage call will wait for a message to arrive (long | 0 |
| … and 10 more inputs | |||
this_aws_iam_access_key_secret — The secret key of the userdynamodb_local_secondary_index_names — DynamoDB local index namesdynamodb3_table_stream_arn — DynamoDB table stream ARNthis_aws_s3_bucket_id — id of created S3 bucketdynamodb_table_stream_label — DynamoDB table stream labeldynamodb2_table_arn — DynamoDB table ARNdynamodb3_table_name — DynamoDB table namedynamodb3_local_secondary_index_names — DynamoDB local index namesrds_this_db_instance_availability_zone — The availability zone of the RDS instancerds_this_db_instance_port — The database portsqs5_queue_arn — SQS queue ARNdynamodb_table_stream_arn — DynamoDB table stream ARNrds_this_db_instance_arn — The ARN of the RDS instancerds_this_db_instance_username — The master username for the databasesqs2_queue_id — SQS queue IDdynamodb_table_id — DynamoDB table IDdynamodb_global_secondary_index_names — DynamoDB secondary index namesthis_redis_replication_group_number_cache_clusters — The AWS Elasticache replication group number cache clustersrds_this_db_instance_hosted_zone_id — The canonical hosted zone ID of the DB instance (to be used in a Route 53 Alias record)sqs3_queue_name — SQS queue namerds_this_db_parameter_group_id — The db parameter group idsqs5_queue_name — SQS queue namedynamodb2_global_secondary_index_names — DynamoDB secondary index namesdynamodb3_table_stream_label — DynamoDB table stream labeldynamodb4_table_id — DynamoDB table IDdynamodb2_table_stream_arn — DynamoDB table stream ARNdynamodb3_global_secondary_index_names — DynamoDB secondary index namessqs1_dlq_queue_arn — SQS queue ARNsqs2_queue_name — SQS queue namesqs3_queue_arn — SQS queue ARNAzure landing zones Terraform module
Terraform supermodule for the Terraform platform engineering for Azure
Terraform module to deploy landing zone subscriptions (and much more) in Azure
Terraform Module to define a consistent naming convention by (namespace, stage,