low-mental-load API/CLI for AWS Route 53
For our purposes at least, looking up the hosted zone id when upserting a DNS record via script or CLI is a useless waste of time...it can be determined automatically from the DNS name for the record being upserted.
Finds the properties of the private and public hosted zones whose names are the deepest superdomain of a given DNSName
.
The general configuration options for AWS services, like credentials
and region
the DNSName to search for, which can be either the exact name of the hosted zone or a subdomain.
a Route53 client with your desired settings.
The properties of the private hosted zone whose name is the deepest superdomain of the given DNSName
,
or null
if no matching private hosted zone was found.
The properties of the public hosted zone whose name is the deepest superdomain of the given DNSName
,
or null
if no matching public hosted zone was found.
Finds the properties of the hosted zone whose name is the deepest superdomain of a given DNSName
.
the DNSName to search for, which can be
either the exact name of the hosted zone or a subdomain.
whether to find a private zone
a Route53 client with your desired
settings.
The properties of the hosted zone whose name is the deepest superdomain of the given DNSName
.
Like findHostedZoneId(options)
, but just returns the zone id.
Upserts a single DNS record set.
The general configuration options for AWS services, like credentials
and region
a ResourceRecordSet
as accepted by the AWS SDK for upsert
(you may provide this or Name
/Target
/TTL
)
the name of the record (required if ResourceRecordSet
isn't given)
the IP address value(s) for an A record or DNS name value(s) for a CNAME record (required if ResourceRecordSet
isn't given)
the time to live (required if ResourceRecordSet
isn't given)
whether to use the private hosted zone
information about the target hosted zone, as returned from findHostedZone
or findHostedZones
.
You can speed up multiple calls to the same hosted zone by pre-fetching the zone
info and providing it here.
a comment for the upsert
a Route53 client with your desired
defaults to true
. If false
, upsertRecordSet
will return without waiting for
confirmation that the Route53 record changes were successfully executed.
The result of the AWS.Route53.changeResourceRecordSets
call.
Upserts public and private DNS records for a single hostname.
The general configuration options for AWS services, like credentials
and region
the name of the record
the time to live
the IP address value(s) for an A record or DNS name value(s) for a CNAME record in the private zone.
the IP address value(s) for an A record or DNS name value(s) for a CNAME record in the public zone.
information about the private hosted zone, as returned from findHostedZones
.
You can speed up multiple calls to the same hosted zones by pre-fetching
the zone info and providing it here.
information about the public hosted zone, as returned from findHostedZones
.
You can speed up multiple calls to the same hosted zones by pre-fetching
the zone info and providing it here.
a Route53 client with your desired
defaults to true
. If false
, upsertPublicAndPrivateRecords
will return without
waiting for confirmation that the Route53 record changes were successfully executed.
The result of the AWS.Route53.changeResourceRecordSets
call.
You can use the mindless-route53
or mroute53
CLI command.
upsert a resource record set
mroute53 upsert --name <DNS name> --target <target IP(s) or DNS name(s)> --ttl
<time to live> [--private] [--comment <comment>] [--region <AWS region>]
--version Show version number [boolean]
--help Show help [boolean]
-n, --name the DNS name for the record set [string]
-t, --target the target IP address(es) for an A record or DNS name(s) for a
CNAME record [array]
--ttl the time-to-live for the record [number]
--private whether to use the private hosted zone
[boolean] [default: false]
-c, --comment a comment for the change [string]
--region the AWS region [string]
-q, --quiet suppress output [boolean]
-v, --verbose enable verbose output [boolean]