Skip to content

Files

Latest commit

 

History

History

terraform

Terraform configurations required to provision AWS infrastructure for d2c.modules.tf

  • HTTP API Gateway
  • ACM
  • Lambda Function
  • S3 bucket for downloads
  • Route53 records

Deployments

cloudcraft - prod

$ awsp modules-deploy  # Assume IAM role in correct account
$ make cloudcraft

betajob - dev

$ awsp private-anton  # Assume IAM role in correct account
$ make betajob

Requirements

Name Version
terraform >= 0.15, <1.0.0
aws ~> 3.0

Providers

Name Version
aws ~> 3.0

Modules

Name Source Version
acm terraform-aws-modules/acm/aws ~> 3.0
alarm_lambda_is_popular terraform-aws-modules/cloudwatch/aws//modules/metric-alarm
alarm_lambda_is_slow terraform-aws-modules/cloudwatch/aws//modules/metric-alarm
alarm_lambda_with_errors terraform-aws-modules/cloudwatch/aws//modules/metric-alarm ~> 2.0
api_gateway terraform-aws-modules/apigateway-v2/aws ~> 1.0
dl_bucket terraform-aws-modules/s3-bucket/aws ~> 2.0
lambda terraform-aws-modules/lambda/aws ~> 2.0
records terraform-aws-modules/route53/aws//modules/records ~> 2.0
sns_topic terraform-aws-modules/sns/aws ~> 3.0

Resources

Name Type
aws_sns_topic_subscription.sns_to_email resource
aws_route53_zone.this data source

Inputs

Name Description Type Default Required
allowed_account_ids List of allowed AWS acount ids where infrastructure will be created list(string) n/a yes
aws_region AWS region where infrastructure will be created string "eu-west-1" no
create_dl_bucket Whether to create S3 bucket for downloads bool false no
dl_bucket_name Name of S3 bucket for downloads (should not include route53_zone_name) string null no
dl_dir Name of directory in S3 bucket string "" no
email Email address to receive CloudWatch alerts string n/a yes
name Name or prefix for many related resources string "modulestf-d2c" no
subdomain Route53 subdomain string "" no
zone_name Zone name for ALB and ACM string n/a yes

Outputs

Name Description
fqdn FQDN of API Endpoint