Projet

Général

Profil

Bug #7453

hobo: déploiement avec base_url se terminant par un /

Ajouté par Frédéric Péters il y a presque 9 ans. Mis à jour il y a plus de 8 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
03 juin 2015
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Ça crée des URL avec des double slash pour les metadata, ça crée pas un instance path correct, etc.


Fichiers

Révisions associées

Révision eaf5772c (diff)
Ajouté par Thomas Noël il y a presque 9 ans

check_hobos: base_url may end with a / (#7453)

Historique

#1

Mis à jour par Thomas Noël il y a presque 9 ans

Je pense qu'il suffit de corriger l'instance_path, le frontoffice_url et les URL des metadata. Voici ma proposition dans check_hobo.

(il y a par ailleurs du nettoyage à faire dans la sortie hobo.json, dans hobo)

#2

Mis à jour par Frédéric Péters il y a presque 9 ans

Je n'aurais pas d'unilatéral :

metadata_url = '%sidp/saml2/metadata' % idp['base_url']

Dans la mesure où il peut rester des hobo.json sans / final.

Le "get_instance_path" était déjà bien faux avant, l'est toujours, en fait le '=' devrait être un '+=', pour ne pas perdre le nom de domaine, et ça devrait être '+%s' et non '%s+' (le résultat qu'on veut pour "https://teleformulaires.pratic59.fr/landrecies/", c'est "teleformulaires.pratic59.fr+landrecies"). On peut aussi se dire que c'est un bug différent et le corriger indépendamment.

#3

Mis à jour par Thomas Noël il y a presque 9 ans

Frédéric Péters a écrit :

Je n'aurais pas d'unilatéral :

metadata_url = '%sidp/saml2/metadata' % idp['base_url']

Dans la mesure où il peut rester des hobo.json sans / final.

Et aussi dans le calcul des MD du sp, donc. Voici un autre patch.

Le "get_instance_path" était déjà bien faux avant, l'est toujours, en fait le '=' devrait être un '+=', pour ne pas perdre le nom de domaine, et ça devrait être '+%s' et non '%s+' (le résultat qu'on veut pour "https://teleformulaires.pratic59.fr/landrecies/", c'est "teleformulaires.pratic59.fr+landrecies"). On peut aussi se dire que c'est un bug différent et le corriger indépendamment.

Oui, un autre ticket, je préfère.

#4

Mis à jour par Frédéric Péters il y a presque 9 ans

Ce patch ne m'enthousiasme guère et j'y préfère encore le fix moche mais plus court que j'avais posé sur le serveur :

@@ -67,6 +67,8 @@ class CmdCheckHobos(Command):

         service = [x for x in self.all_services.get('services', []) if \
                 x.get('service-id') == 'wcs' and x.get('base_url') == base_url][0]
+        if base_url.endswith('/'): # wcs doesn't expect a trailing slash
+            service['base_url'] = base_url[:-1]

         pub.app_dir = os.path.join(global_app_dir,
                 self.get_instance_path(service))

?

#5

Mis à jour par Thomas Noël il y a presque 9 ans

Quitte à faire moche, autant que ça soit discret, effectivement. Je pousse donc plutôt ça.

#6

Mis à jour par Thomas Noël il y a presque 9 ans

  • Statut changé de En cours à Résolu (à déployer)
commit eaf5772cef8e2097740c49a02453175ab73d754b
Author: Thomas NOEL <tnoel@entrouvert.com>
Date:   Mon Jun 8 10:05:55 2015 +0200

    check_hobos: base_url may end with a / (#7453)

(sorry pour l'attribution, j'ai fait vite)

#7

Mis à jour par Thomas Noël il y a plus de 8 ans

  • Statut changé de Résolu (à déployer) à Fermé

Formats disponibles : Atom PDF