Ross McFarland
388e9a67e0
Hook up new GeoCodes validation to _DynamicMixin
7 years ago
Ross McFarland
a767a5cb25
Implement pool-level fallbacks and validations
7 years ago
Ross McFarland
ccd9038a38
Impliment Dynamic rule geo validation
7 years ago
Ross McFarland
e16648ab1f
Progress towards fully fleshed out pools & rules
7 years ago
Ross McFarland
b80348c2c7
Add __eq__, __ne__, and __repr__ to Dynamic objects and test
7 years ago
Ross McFarland
446f66f562
Implement _DynamicMixin's value objects, unit test them
7 years ago
Ross McFarland
70c35aac26
WIP implementation of dyanmic pools & rules validation
7 years ago
Ross McFarland
c9b373f0ae
Further clean up/division of labor and tests
7 years ago
Ross McFarland
2829862ea5
Major refactoring of record validation to better support (planned) complex/dynamic record types
7 years ago
Ross McFarland
3ea78af8e1
pycodestyle updates, mostly escaping \, couple r's, ignore break on binary
8 years ago
Ross McFarland
e6d8669611
Implement healthcheck protocol and port for Dyn
8 years ago
Ross McFarland
849a97f161
Add healthcheck protocol validation, HTTP or HTTPS
8 years ago
Ross McFarland
9752cb0a12
Add protocol and port to octodns.healthcheck configurables
8 years ago
Josh Soref
5d2ba2e715
Spelling ( #214 )
* spelling: ancillary
* spelling: antarctica
* spelling: australia
* spelling: authentication
* spelling: continental
* spelling: constructor
* spelling: conversion
* spelling: creation
* spelling: doesn't
* spelling: easily
* spelling: efficiently
* spelling: equivalent
* spelling: essentially
* spelling: everything
* spelling: exactly
* spelling: be
* spelling: expensive
* spelling: supports
* spelling: healthcheck
* spelling: immediately
* spelling: ignored
* spelling: invocation
* spelling: itself
* spelling: leftovers
* spelling: missing
* spelling: natural
* spelling: nonexistent
* spelling: peculiarities
* spelling: pointing
This change hit a line length limitation, so I'm wrapping it and
adding a period which appears to match local style...
* spelling: quicker
* spelling: response
* spelling: requested
* spelling: redirect
* spelling: traffic
* spelling: unknown
* spelling: uploaded
* spelling: useful
* spelling: separately
* spelling: zone
8 years ago
Ross McFarland
093398ff94
Support for SSHFP ECDSA (3) and SHA-256 (2)
RFC 6594 & RFC 7479
8 years ago
Ross McFarland
af435c3130
Handle MX preference of 0
8 years ago
Adam Smith
bf1896329b
validate values for empty string or None value
dump does not write invalid value(s) to yaml
8 years ago
Ross McFarland
bf4f7dd42d
Allow enabling lenient on a per-record basis with octodns.lenient
```
---
'':
octodns:
ignored: True
lenient: True
type: CNAME # not valid to have a root cname
value: foo.com.
8 years ago
Ross McFarland
30efda3295
Make long TXT record concat cleaerer
8 years ago
Ross McFarland
70120bedc8
Implement "chunked" TXT/SPF value support for long values
This implements it transparently at Record level. Providers that need things to
be chunked (seems to just be Route53 an Dyn) switch to use `chunked_values`, but
everything else can stick with `values`. I've run through each provider I have
access to verifying that things operate as expected/required. OVH and Azure are
untested.
8 years ago
Ross McFarland
ba6dc9858e
Get out of the business of validating CAA records
Seem to be pretty inconsistently implemented/validated across providers so
just shrug and move on.
8 years ago
Ross McFarland
1e68cd6ae9
Add CAA support to Dyn, PowerDNS, and Route53
8 years ago
Ross McFarland
4cae1e2bdb
Add CAA Record class and tests
8 years ago
Ross McFarland
4e3cc6b46a
SSHFP RFC4255 - validate algorithm & fingerprint_type
- unrecognized wording for invalid values
9 years ago
Ross McFarland
3ce0d71e62
NAPTR RFC2915 - validate flags (partial)
- punting on service, regex & replacement validation for now
- clean up MX a smidge
9 years ago
Ross McFarland
6fc82fd279
Validate that MX preference parses as int
9 years ago
Ross McFarland
1340aee8a9
MX RFC1035 - priority -> preference & value -> exchange
9 years ago
Ross McFarland
d2af8efe5c
Root CNAMEs are not allowed
9 years ago
Ross McFarland
a97818b6ec
populating existing provider state is lenient
- adds lenient flag to Record.new, problems during validation are just
warnings if it's true
- target populate calls during the plan phase pass lenient=True
- make all of the provider.populate call logging consistent including both
target and lenient
- add source=self to Record.new in a few places that were missing it
9 years ago
Ross McFarland
8323b4c0ea
Complete refactor & rework of how validation is set up
This is with an eye toward expanding it in the future both in terms of what it
checks and to add the ability to ignore things. This commit does not intend to
change any validation. It only reworks the flow and improves the error
messaging.
9 years ago
Ross McFarland
670d7eef17
Record.healtcheck_(host|path)
9 years ago
Ross McFarland
756f017854
Go back to simple/standard ALIAS value
9 years ago
Ross McFarland
9dbfe7c839
AliasValue, name & type, improved Record KeyError handling
9 years ago
Ross McFarland
9e172ed303
Add AliasRecord & tests
9 years ago
Ross McFarland
7957a4c018
Initial import of OSS OctoDNS
9 years ago