diff --git a/octodns/provider/ns1.py b/octodns/provider/ns1.py index bf08358..510b099 100644 --- a/octodns/provider/ns1.py +++ b/octodns/provider/ns1.py @@ -849,6 +849,8 @@ class Ns1Provider(BaseProvider): for monitor in self._client.monitors.values(): data = self._parse_notes(monitor['notes']) + if not data: + continue if expected_host == data['host'] and \ expected_type == data['type']: # This monitor does not belong to this record diff --git a/tests/test_octodns_provider_ns1.py b/tests/test_octodns_provider_ns1.py index df517a2..e21fe0d 100644 --- a/tests/test_octodns_provider_ns1.py +++ b/tests/test_octodns_provider_ns1.py @@ -659,6 +659,18 @@ class TestNs1ProviderDynamic(TestCase): }, 'four': monitor_four, 'five': monitor_five, + 'six': { + 'config': { + 'host': '10.10.10.10', + }, + 'notes': 'non-conforming notes', + }, + 'seven': { + 'config': { + 'host': '11.11.11.11', + }, + 'notes': None, + }, } # Would match, but won't get there b/c it's not dynamic