This change improves the process for checking for AzureDNS zones by using the known set and not relying upon custom error handling.
Since the provider already fetches the zones, octodns doesn't need to make a second call to check for the existence of the zone - _populate_zones already does that for us.
Use fqdn package to help verify if the record value is really valid.
The original behavior will treat value like `_.` or `.` be a valid
record, which is strange, and the real world may not have those use
cases at all.
The RFC documents are pretty long, as I didn't read them all or enough
to tell should it be valid or not by the spec, so I opened issue #612 to
discuss this case and got a positive response from the main maintainer
to have the change.
Close#628
This commit strips any superfluous -alphaN (or beta or rc) from the
version number's minor number so it can be cast to an int. This will
allow octodns to sync to/from PowerDNS pre-releases.
The caching of pools for the Constellix provider will now cache based
on the type of pool and the name. Previously it was caching based on
the name only.
In order to add support for pools and other API resources from Constellix, we need to update the base URL to not contain domains and instead specify this where it's needed.
It can be useful to only synchronize zones that use a certain source. For
example, in a situation where some zones use a dynamic source and others don't,
you probably want to synchronize those with a dynamic source regularly, and
only synchronize the others when a change is made.
Although we only synchronize the zones that use a given source, we still want
to synchronize all sources to avoid deleting records that would live in another
source of the zone.