/terraform-aws-route53-record

Terraform module to create Route53 table record set resource on AWS.

Primary LanguageHCLMIT LicenseMIT

Terraform AWS Route53 Record

Terraform module to create Route53 table record set resource on AWS.

Terraform Licence


We eat, drink, sleep and most importantly love DevOps. We are working towards stratergies for standardizing architecture while ensuring security for the infrastructure. We are strong believer of the philosophy Bigger problems are always solved by breaking them into smaller manageable problems. Resonating with microservices architecture, it is considered best-practice to run database, cluster, storage in smaller connected yet manageable pieces within the infrastructure.

This module is basically combination of Terraform open source and includes automatation tests and examples. It also helps to create and improve your infrastructure with minimalistic code instead of maintaining the whole infrastructure code yourself.

We have fifty plus terraform modules. A few of them are comepleted and are available for open source usage while a few others are in progress.

Prerequisites

This module has a few dependencies:

Examples

IMPORTANT: Since the master branch used in source varies based on new modifications, we suggest that you use the release versions here.

Here are some examples of how you can use this module in your inventory structure:

Simple set

  module "route53-record" {
    source  = "git::https://github.com/clouddrove/terraform-aws-route53-record.git?ref=tags/0.12.1"
    zone_id = "Z1XJD7SSBKXLC1"
    name    = "www"
    type    = "A"
    ttl     = "3600"
    values  = "10.0.0.27"
  }

Set with alias

  module "route53-record" {
    source  = "git::https://github.com/clouddrove/terraform-aws-route53-record.git?ref=tags/0.12.1"
    zone_id = "Z1XJD7SSBKXLC1"
    name    = "www."
    type    = "A"
    alias   = {
      name = "d130easdflja734js.cloudfront.net"
      zone_id = "Z2FDRFHATA1ER4"
      evaluate_target_health = false
    }
  }

Inputs

Name Description Type Default Required
alias An alias block. Conflicts with ttl & records. Alias record documented below. map <map> no
allow_overwrite Allow creation of this record in Terraform to overwrite an existing record, if any. This does not affect the ability to update the record in Terraform and does not prevent other resources within Terraform or manual Route 53 changes outside Terraform from overwriting this record. false by default. This configuration is not recommended for most environments. bool false no
health_check_id The health check the record should be associated with. string `` no
multivalue_answer_routing_policy Set to true to indicate a multivalue answer routing policy. Conflicts with any other routing policy. string `` no
name The name of the record. string `` no
record_enabled Whether to create Route53 record set. bool true no
set_identifier Unique identifier to differentiate records with routing policies from one another. Required if using failover, geolocation, latency, or weighted routing policies documented below. string `` no
ttl (Required for non-alias records) The TTL of the record. string `` no
type The record type. Valid values are A, AAAA, CAA, CNAME, MX, NAPTR, NS, PTR, SOA, SPF, SRV and TXT. string `` no
values (Required for non-alias records) A string list of records. To specify a single record value longer than 255 characters such as a TXT record for DKIM, add "" inside the Terraform configuration string (e.g. "first255characters""morecharacters"). string `` no
zone_id Zone ID. string `` no

Feedback

If you come accross a bug or have any feedback, please log it in our issue tracker, or feel free to drop us an email at hello@clouddrove.com.

If you have found it worth your time, go ahead and give us a ★ on our GitHub!

About us

At CloudDrove, we offer expert guidance, implementation support and services to help organisations accelerate their journey to the cloud. Our services include docker and container orchestration, cloud migration and adoption, infrastructure automation, application modernisation and remediation, and performance engineering.

We are The Cloud Experts!


We ❤️ Open Source and you can check out our other modules to get help with your new Cloud ideas.