1
0
mirror of https://github.com/github/octodns.git synced 2024-05-11 05:55:00 +00:00

few more utf-8 prints/exceptions

This commit is contained in:
Ross McFarland
2022-08-18 20:13:36 -07:00
parent 2d0f2ccc5c
commit 94317879b4

View File

@@ -17,7 +17,7 @@ from sys import stdout
import logging import logging
from . import __VERSION__ from . import __VERSION__
from .idna import IdnaDict, idna_decode from .idna import IdnaDict, idna_decode, idna_encode
from .provider.base import BaseProvider from .provider.base import BaseProvider
from .provider.plan import Plan from .provider.plan import Plan
from .provider.yaml import SplitYamlProvider, YamlProvider from .provider.yaml import SplitYamlProvider, YamlProvider
@@ -754,6 +754,7 @@ class Manager(object):
def validate_configs(self): def validate_configs(self):
# TODO: this code can probably be shared with stuff in sync # TODO: this code can probably be shared with stuff in sync
for zone_name, config in self.config['zones'].items(): for zone_name, config in self.config['zones'].items():
decoded_zone_name = idna_decode(zone_name)
zone = Zone(zone_name, self.configured_sub_zones(zone_name)) zone = Zone(zone_name, self.configured_sub_zones(zone_name))
source_zone = config.get('alias') source_zone = config.get('alias')
@@ -761,7 +762,7 @@ class Manager(object):
if source_zone not in self.config['zones']: if source_zone not in self.config['zones']:
self.log.exception('Invalid alias zone') self.log.exception('Invalid alias zone')
raise ManagerException( raise ManagerException(
f'Invalid alias zone {zone_name}: ' f'Invalid alias zone {decoded_zone_name}: '
f'source zone {source_zone} does ' f'source zone {source_zone} does '
'not exist' 'not exist'
) )
@@ -769,7 +770,7 @@ class Manager(object):
if 'alias' in self.config['zones'][source_zone]: if 'alias' in self.config['zones'][source_zone]:
self.log.exception('Invalid alias zone') self.log.exception('Invalid alias zone')
raise ManagerException( raise ManagerException(
f'Invalid alias zone {zone_name}: ' f'Invalid alias zone {decoded_zone_name}: '
'source zone {source_zone} is an ' 'source zone {source_zone} is an '
'alias zone' 'alias zone'
) )
@@ -783,7 +784,9 @@ class Manager(object):
try: try:
sources = config['sources'] sources = config['sources']
except KeyError: except KeyError:
raise ManagerException(f'Zone {zone_name} is missing sources') raise ManagerException(
f'Zone {decoded_zone_name} is missing sources'
)
try: try:
# rather than using a list comprehension, we break this # rather than using a list comprehension, we break this
@@ -795,7 +798,7 @@ class Manager(object):
sources = collected sources = collected
except KeyError: except KeyError:
raise ManagerException( raise ManagerException(
f'Zone {zone_name}, unknown source: ' + source f'Zone {decoded_zone_name}, unknown source: ' + source
) )
for source in sources: for source in sources:
@@ -810,19 +813,21 @@ class Manager(object):
collected.append(self.processors[processor]) collected.append(self.processors[processor])
except KeyError: except KeyError:
raise ManagerException( raise ManagerException(
f'Zone {zone_name}, unknown ' f'processor: {processor}' f'Zone {decoded_zone_name}, unknown '
f'processor: {processor}'
) )
def get_zone(self, zone_name): def get_zone(self, zone_name):
if not zone_name[-1] == '.': if not zone_name[-1] == '.':
raise ManagerException( raise ManagerException(
f'Invalid zone name {zone_name}, missing ' 'ending dot' f'Invalid zone name {idna_decode(zone_name)}, missing '
'ending dot'
) )
zone = self.config['zones'].get(zone_name) zone = self.config['zones'].get(zone_name)
if zone: if zone:
return Zone( return Zone(
idna_decode(zone_name), self.configured_sub_zones(zone_name) idna_encode(zone_name), self.configured_sub_zones(zone_name)
) )
raise ManagerException(f'Unknown zone name {zone_name}') raise ManagerException(f'Unknown zone name {idna_decode(zone_name)}')