Skip to content

Terraform module for hosting a CloudFront S3 static website.

License

Notifications You must be signed in to change notification settings

vicktornl/terraform-module-static-website

Repository files navigation

Terraform module static website

module "examplecom" {
  source               = "[email protected]:vicktornl/terraform-module-static-website.git"
  prefix               = "examplecom"
  zone_id              = aws_route53_zone.main.zone_id
  domain_name          = "example.com"
  redirect_domain_name = "www.example.com"
  acm_certificate_arn  = aws_acm_certificate.main.arn
}

Requirements

No requirements.

Providers

Name Version
archive n/a
aws n/a
aws.virginia n/a
template n/a

Modules

No modules.

Resources

Name Type
aws_cloudfront_distribution.main resource
aws_cloudfront_distribution.redirect resource
aws_cloudfront_origin_access_identity.main resource
aws_iam_role.lambda_basic_auth resource
aws_iam_role.lambda_index resource
aws_lambda_function.basic_auth resource
aws_lambda_function.index resource
aws_route53_record.main resource
aws_route53_record.redirect resource
aws_s3_bucket.main resource
aws_s3_bucket.redirect resource
aws_s3_bucket_object.error resource
aws_s3_bucket_object.index resource
aws_s3_bucket_policy.main resource
aws_waf_web_acl.main resource
archive_file.lambda_basic_auth data source
archive_file.lambda_index data source
aws_iam_policy_document.lambda_assume_role data source
aws_iam_policy_document.main data source
template_file.error data source
template_file.handler_basic_auth data source
template_file.handler_index data source
template_file.index data source

Inputs

Name Description Type Default Required
acm_certificate_arn ARN of the ACM Certificate used for the CloudFront distributions (us-east-1) string n/a yes
basic_auth_enabled Controls wether basic auth is enabled bool false no
basic_auth_password Basic auth password string "auth" no
basic_auth_username Basic auth username string "basic" no
cache_enabled Controls wether caching is enabled bool false no
domain_name Fully qualified domain name string n/a yes
error_document n/a string "error.html" no
index_document n/a string "index.html" no
prefix Prefix used for all resource names string n/a yes
redirect_domain_name Optional fully qualified domain name to redirect from string "null" no
rewrite_uri Rewrite all trafic to this absolute uri (commonly used for React websites with History pushState routing) string "" no
waf_enabled Controls wether WAF is enabled for the CloudFront distributions bool false no
waf_rule_id WAF Rule id string "" no
zone_id Hosted zone id string n/a yes

Outputs

Name Description
cloudfront_distribution_id n/a

About

Terraform module for hosting a CloudFront S3 static website.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published