Skip to content

Create a HTTPS redirect using free-tier AWS resources - Cloudfront, S3, ACM, Route53

License

Notifications You must be signed in to change notification settings

commitdev/terraform-aws-https-redirect

Repository files navigation

aws-https-redirect

Create a HTTPS redirect using free AWS resources - Cloudfront, S3, ACM, Route53

Validation Status

Contributing

Full contribution guidelines are covered here.

Doc generation

Code formatting and documentation for variables and outputs is generated using pre-commit-terraform hooks which uses terraform-docs.

Follow these instructions to install pre-commit locally.

And install terraform-docs with go get github.com/segmentio/terraform-docs or brew install terraform-docs.

Maintainers

Please install (via brew or whatever means) git-chglog.

To update the changelog, run make changelog To release a new version, check out the main branch and run make release. The new version should be automatically detected by Terraform Registry.

By default these commands will tag or create changelogs for a new 'patch' version. To increment 'minor' or 'major' versions prefix the make command with SCOPE=minor.

Notes

This allows you to do a redirect from a domain to a domain plus a path, which is something that isn't supported just through DNS, as it requires knowledge of HTTP.

For example, foo.test.com -> bar.test.com/baz/

The only requirement is an existing Route53 zone.

The AWS provider must be within region us-east-1 to work properly with cloudfront. If your provider is already set up in a different region you can create another and provide it explicitly:

provider "aws" {
  alias  = "east1"
  region = "us-east-1"
}

module "redirect" {
  source    = "commitdev/aws-https-redirect"
  providers = {
    aws = aws.east1
  }

  ...
}

Requirements

Name Version
terraform >= 0.14
aws >= 2.0

Providers

Name Version
aws >= 2.0

Inputs

Name Description Type Default Required
domain_aliases Alternative names (aliases) to allow list(string) [] no
domain_name Domain to provide the redirect including subdomain if applicable string n/a yes
existing_cert_arn The ARN of an ACM cert that already exists - must be in the us-east-1 region string "" no
redirect_target_url Redirect target - should be a full URL. If http:// or https:// is excluded, the scheme of the request will be used string n/a yes
tags Tags to apply to created resources map(string) {} no
use_existing_cert Set to true to use an existing cert bool false no
zone_name Domain name of the Route53 hosted zone string n/a yes

Outputs

Name Description
certificate_arn The ARN of the created or used certificate
cloudfront_distribution_arn The ARN of the created cloudfront distribution
s3_bucket_arn The ARN of the created S3 bucket

About

Create a HTTPS redirect using free-tier AWS resources - Cloudfront, S3, ACM, Route53

Resources

License

Stars

Watchers

Forks

Packages

No packages published