From 06854086958c5353fb013d36b47664ce92084bea Mon Sep 17 00:00:00 2001 From: Thomas NOEL Date: Fri, 2 Feb 2018 11:49:07 +0100 Subject: [PATCH] check_hobos: handle base_url with ou without trailing slash (#21605) --- wcs/ctl/check_hobos.py | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/wcs/ctl/check_hobos.py b/wcs/ctl/check_hobos.py index 838fb53d..b03ae7fc 100644 --- a/wcs/ctl/check_hobos.py +++ b/wcs/ctl/check_hobos.py @@ -93,7 +93,10 @@ class CmdCheckHobos(Command): register_tld_names=False) global_app_dir = pub.app_dir + base_url = args[0] + if base_url.endswith('/'): # wcs doesn't expect a trailing slash + base_url = base_url[:-1] if args[1] == '-': # get environment definition from stdin @@ -101,16 +104,20 @@ class CmdCheckHobos(Command): else: self.all_services = json.load(file(args[1])) - try: - service = [x for x in self.all_services.get('services', []) if \ - x.get('service-id') == 'wcs' and x.get('base_url') == base_url and - not x.get('secondary')][0] - except IndexError: + for service in self.all_services.get('services', []): + if service.get('service-id') != 'wcs': + continue + if service.get('secondary'): + continue + if not service.get('base_url'): + continue + if service['base_url'] == base_url or service['base_url'] == base_url + '/': + break + else: return service['this'] = True - if base_url.endswith('/'): # wcs doesn't expect a trailing slash - service['base_url'] = base_url[:-1] + service['base_url'] = base_url # remove potential trailing slash pub.app_dir = os.path.join(global_app_dir, self.get_instance_path(service)) -- 2.15.1