This project creates and manages resources within an AWS account to bootstrap it for dxw's Dalmatian hosting platform.
Name | Version |
---|---|
terraform | >= 1.5.3 |
archive | >= 2.4.0 |
aws | >= 5.11.0 |
datadog | >= 3.46.0 |
Name | Version |
---|---|
archive | 2.6.0 |
aws | 5.75.1 |
aws.useast1 | 5.75.1 |
datadog | >= 3.46.0 |
Name | Source | Version |
---|---|---|
aws_tfvars_s3 | github.com/dxw/terraform-aws-tfvars-s3 | v0.2.6 |
Name | Description | Type | Default | Required |
---|---|---|---|---|
aws_region | AWS region in which to launch resources | string |
n/a | yes |
cloudtrail_athena_glue_tables | Create the Glue database and tables for CloudTrail to be used with Athena | bool |
n/a | yes |
cloudtrail_athena_s3_output_kms_encryption | Use KMS encryption with the CloudTrail Athena output S3 bucket | bool |
n/a | yes |
cloudtrail_athena_s3_output_retention | CloudTrail Athena Set to 0 to keep all logs | number |
n/a | yes |
cloudtrail_kms_encryption | Use KMS encryption with CloudTrail | bool |
n/a | yes |
cloudtrail_log_prefix | Cloudtrail log prefix | string |
n/a | yes |
cloudtrail_log_retention | Cloudtrail log retention in days. Set to 0 to keep all logs. | number |
n/a | yes |
cloudtrail_s3_access_logs | Enable CloudTrail S3 bucket access logging | bool |
n/a | yes |
cloudwatch_opsgenie_alerts_sns_endpoint | The Opsgenie SNS endpoint. https://support.atlassian.com/opsgenie/docs/integrate-opsgenie-with-incoming-amazon-sns/ | string |
n/a | yes |
cloudwatch_opsgenie_alerts_sns_kms_encryption | Use KMS encryption with the Opsgenie Alerts SNS topic | bool |
n/a | yes |
cloudwatch_slack_alerts_channel | The Slack channel for CloudWatch alerts | string |
n/a | yes |
cloudwatch_slack_alerts_hook_url | The Slack webhook URL for CloudWatch alerts | string |
n/a | yes |
cloudwatch_slack_alerts_kms_encryption | Use KMS encryption with the Slack Alerts SNS topic and logs | bool |
n/a | yes |
cloudwatch_slack_alerts_log_retention | Cloudwatch Slack Alerts log retention. Set to 0 to keep all logs | number |
n/a | yes |
codestar_connections | CodeStar connections to create | map( |
n/a | yes |
custom_iam_roles | Configure custom IAM roles/policies | map(object({ |
n/a | yes |
datadog_api_key | Datadog API key | string |
n/a | yes |
datadog_app_key | Datadog App key | string |
n/a | yes |
datadog_region | Datadog region | string |
n/a | yes |
delete_default_resources_lambda_kms_encryption | Conditionally encrypt the Delete Default Resources Lambda logs with KMS | bool |
n/a | yes |
delete_default_resources_log_retention | Log retention for the Delete Default Resources Lambda | number |
n/a | yes |
enable_cloudtrail | Enable Cloudtrail | bool |
n/a | yes |
enable_cloudwatch_opsgenie_alerts | Enable CloudWatch Opsgenie alerts. This creates an SNS topic to which alerts and pipelines can send messages, which are then sent to the Opsgenie SNS endpoint. | bool |
n/a | yes |
enable_cloudwatch_slack_alerts | Enable CloudWatch Slack alerts. This creates an SNS topic to which alerts and pipelines can send messages, which are then picked up by a Lambda function that forwards them to a Slack webhook. | bool |
n/a | yes |
enable_datadog_aws_integration | Conditionally create the datadog AWS integration role (https://docs.datadoghq.com/integrations/guide/aws-terraform-setup/) and configure the datadog integration | bool |
n/a | yes |
enable_delete_default_resources | Creates a Lambda function which deletes all default VPCs and resources within them. This only needs to be ran once, either through the AWS console or via the AWS CLI | bool |
n/a | yes |
enable_route53_root_hosted_zone | Conditionally create Route53 hosted zone, which will contain the DNS records for resources launched within the account. | bool |
n/a | yes |
enable_s3_tfvars | enable_s3_tfvars | bool |
n/a | yes |
enable_ssm_dhmc | Enables SSM Default Host Management Configuration | bool |
n/a | yes |
logging_bucket_retention | Logging bucket retention in days. Set to 0 to keep all logs. | number |
n/a | yes |
project_name | Project name to be used as a prefix for all resources | string |
n/a | yes |
route53_root_hosted_zone_domain_name | Route53 root hosted zone domain name | string |
n/a | yes |
tfvars_s3_enable_s3_bucket_logging | Enable S3 bucket logging on the tfvars S3 bucket | bool |
true |
no |
tfvars_s3_logging_bucket_retention | tfvars S3 Logging bucket retention in days. Set to 0 to keep all logs. | number |
30 |
no |
tfvars_s3_tfvars_files | Map of objects containing tfvar file paths | map( |
{} |
no |
tfvars_s3_tfvars_restrict_access_user_ids | List of AWS User IDs that require access to the tfvars S3 bucket. If left empty, all users within the AWS account will have access | list(string) |
[] |
no |
Name | Description |
---|---|
resource_map | Simplified map of resources and their dependencies, associations and attachments |