dnscontrol/providers
Brice Figureau 7b8d608019 ROUTE53: Support Route53's ALIAS record type (#239) (#301)
* Stable comparison of metadata (#239)

Iterating over a map in Go never produces twice the same ordering.
Thus when comparing two metadata map with more than one key, the
`differ` is always finding differences.

To properly compare records metadata, we need to iterate the maps
in a deterministic way.

Signed-off-by: Brice Figureau <brice@daysofwonder.com>

* Support for Route53 ALIAS record type (#239)

Route53 ALIAS doesn't behave like a regular ALIAS, and is much more
limited as its target can only be some specific AWS resources or
another record in the same zone.

According to #239, this change adds a new directive R53_ALIAS which
implements this specific alias. This record type can only be used
with the Route53 provider.

This directive usage looks like this:
```js
D("example.com", REGISTRAR, DnsProvider("ROUTE53"),
R53_ALIAS("foo1", "A", "bar") // record in same zone
R53_ALIAS("foo2", "A",
  "blahblah.elasticloadbalancing.us-west-1.amazonaws.com",
   R53_ZONE('Z368ELLRRE2KJ0')) // ELB in us-west-1

```

Unfortunately, Route53 requires indicating the hosted zone id
where the target is defined (those are listed in AWS documentation,
see the R53_ALIAS documentation for links).
2018-01-16 05:53:12 -05:00
..
_all Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
activedir Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
bind Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
cloudflare Add IGNORE(label) which ignores label at the provider (#183) (#300) 2018-01-15 15:39:29 -05:00
config Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
diff ROUTE53: Support Route53's ALIAS record type (#239) (#301) 2018-01-16 05:53:12 -05:00
digitalocean Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
dnsimple Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
gandi Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
gcloud Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
linode Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
namecheap Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
namedotcom NAMEDOTCOM: add TXTMulti capability (#299) 2018-01-11 07:23:59 -05:00
ns1 Add support for TXT records with multiple strings (BIND, ROUTE53) (#293) 2018-01-04 19:19:35 -05:00
ovh Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
route53 ROUTE53: Support Route53's ALIAS record type (#239) (#301) 2018-01-16 05:53:12 -05:00
softlayer Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00
vultr Add support for TXT records with multiple strings (BIND, ROUTE53) (#293) 2018-01-04 19:19:35 -05:00
capabilities.go ROUTE53: Support Route53's ALIAS record type (#239) (#301) 2018-01-16 05:53:12 -05:00
providers.go Vet and Lint the entire system (#296) 2018-01-09 12:53:16 -05:00