correctly iterate and return results of any service checks. (#2878)

current implementation was breaking making the module unusable, changing to the list comprehension fixes this. Also default to seconds instead of throwing a exception when no duration units are supplied as this causes tests to fail
pull/18777/head
Steve Gargan 8 years ago committed by Matt Clay
parent d00e941a0e
commit 7cd3da9b58

@ -315,7 +315,7 @@ def add_service(module, service):
service_id=result.id, service_id=result.id,
service_name=result.name, service_name=result.name,
service_port=result.port, service_port=result.port,
checks=map(lambda x: x.to_dict(), service.checks), checks=[check.to_dict() for check in service.checks],
tags=result.tags) tags=result.tags)
@ -484,8 +484,7 @@ class ConsulCheck():
if duration: if duration:
duration_units = ['ns', 'us', 'ms', 's', 'm', 'h'] duration_units = ['ns', 'us', 'ms', 's', 'm', 'h']
if not any((duration.endswith(suffix) for suffix in duration_units)): if not any((duration.endswith(suffix) for suffix in duration_units)):
raise Exception('Invalid %s %s you must specify units (%s)' % duration = "{}s".format(duration)
(name, duration, ', '.join(duration_units)))
return duration return duration
def register(self, consul_api): def register(self, consul_api):

Loading…
Cancel
Save