Projet

Général

Profil

0001-check_hobo-don-t-modify-wcs-base_url-in-stored-hobo..patch

Thomas Noël, 02 février 2018 15:31

Télécharger (3,1 ko)

Voir les différences:

Subject: [PATCH] check_hobo: don't modify wcs base_url in stored hobo.json
 (#21605)

 wcs/ctl/check_hobos.py | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)
wcs/ctl/check_hobos.py
109 109
            return
110 110

  
111 111
        service['this'] = True
112
        if base_url.endswith('/'): # wcs doesn't expect a trailing slash
113
            service['base_url'] = base_url[:-1]
114 112

  
115 113
        pub.app_dir = os.path.join(global_app_dir,
116 114
                self.get_instance_path(service))
......
150 148
        if not pub.cfg.get('misc'):
151 149
            pub.cfg['misc'] = {'charset': 'utf-8'}
152 150
        pub.cfg['misc']['sitename'] = service.get('title').encode('utf-8')
153
        pub.cfg['misc']['frontoffice-url'] = service.get('base_url').encode('utf-8')
151

  
152
        base_url = service.get('base_url')
153
        if base_url.endswith('/'):  # wcs doesn't expect a trailing slash
154
            base_url = base_url[:-1]
155
        pub.cfg['misc']['frontoffice-url'] = base_url.encode('utf-8')
154 156
        if not pub.cfg.get('language'):
155 157
            pub.cfg['language'] = {'language': 'fr'}
156 158

  
......
274 276
        if not pub.cfg['sp'].get('publickey'):
275 277
            from qommon.ident.idp import MethodAdminDirectory
276 278
            spconfig = pub.cfg['sp']
277
            spconfig['saml2_base_url'] = str(service.get('base_url')) + '/saml'
279
            base_url = service.get('base_url')
280
            if base_url.endswith('/'):
281
                base_url = base_url[:-1]
282
            spconfig['saml2_base_url'] = str(base_url) + '/saml'
278 283
            spconfig['saml2_providerid'] = spconfig['saml2_base_url'] + '/metadata'
279 284
            MethodAdminDirectory().generate_rsa_keypair()
280 285

  
......
319 324
            pub.write_cfg()
320 325

  
321 326
    def get_instance_path(self, service):
322
        parsed_url = urllib2.urlparse.urlsplit(service.get('base_url'))
327
        base_url = service.get('base_url')
328
        if base_url.endswith('/'):
329
            base_url = base_url[:-1]
330
        parsed_url = urllib2.urlparse.urlsplit(base_url)
323 331
        instance_path = parsed_url.netloc
324 332
        if parsed_url.path:
325 333
            instance_path += '+%s' % parsed_url.path.replace('/', '+')
......
376 384
                    variables['portal_user_url'] = service_url
377 385
                    variables['portal_user_title'] = service.get('title')
378 386
                    config.set('options', 'theme_skeleton_url',
379
                            service.get('base_url') + '__skeleton__/')
387
                            service_url + '__skeleton__/')
380 388
            if service.get('service-id') == 'authentic':
381 389
                variables['idp_account_url'] = service_url + 'accounts/'
382 390
        if self.all_services.get('variables'):
383
-