Skip to content

aws.route53-hosted-zone resource

Description

HostedZone manages a Route 53 hosted zone: a DNS namespace, either public or private. The name and the reusable delegation set are fixed at creation, so a change to either replaces the zone; the comment, the tags, and the VPC associations reconcile in place. Associating any VPC makes the zone private, and there is no flag to flip a zone between public and private, so the set of VPCs is what decides the kind. ForceDestroy is a delete-time switch: when it is set, the zone's own records are purged before the zone is deleted, since Route 53 refuses to delete a zone that still holds records.

Source: internal/service/route53/hosted_zone_rsrc.go:33

Example usage:

imports: {
  aws: 'github.com/cloudboss/unobin-library-aws'
}

resources: {
  example: aws.route53-hosted-zone {
    # Set input fields here.
  }
}

Inputs

name

string

required

comment

optional(string)

delegation-set-id

optional(string)

vpcs

list(object)
list(
  object({
    vpc-id: string
    vpc-region: optional(string)
  })
)

force-destroy

optional(boolean)

tags

map(string)

Input Constraints

Field combinations

At most one of delegation-set-id or vpcs.

Vpcs rules

a vpc association requires a vpc-id.

Rule logic
For each
input.vpcs
Require
@each.value.vpc-id != null
&& @core.length(@each.value.vpc-id) >= 1

Outputs

zone-id

string

arn

string

name

string

name-servers

list(string)

primary-name-server

string