Projet

Général

Profil

Development #35481

hobo_deploy: en multicollectivité, éviter les variables_url qui commencent par un _

Ajouté par Thomas Noël il y a plus de 4 ans. Mis à jour il y a plus de 4 ans.

Statut:
Rejeté
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
20 août 2019
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

Actuellement on crée ainsi les variables URL :

  variables['%s_url' % service.get('slug').replace('-', '_')] = service_url

mais pour le publik central (celui de la métropole en général) et les autres villes, le slug commence par un "_" et donc ces variables sont inutilisables via Django.

On ne peut donc pas facilement utiliser la passerelle de l'interco sur le site d'une ville, ni même pointer simplement le portail de l'interco sur le portail des villes, etc.

Il faudrait des variables utilisables en Django, qui ne commencent pas par un "_"


Demandes liées

Lié à Hobo - Support #35483: settings_loader : en multicollectivité, éviter les variables_url qui commencent par un _Rejeté20 août 2019

Actions

Historique

#1

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

  • Sujet changé de hobo_deploy: en multicollectivité, créer des variables pour les services de l'interco à hobo_deploy: en multicollectivité, éviter les variables_url qui commencent par un _
#2

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

  • Lié à Support #35483: settings_loader : en multicollectivité, éviter les variables_url qui commencent par un _ ajouté
#3

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

  • Statut changé de Nouveau à Rejeté

Une solution dans wcs serait du genre :

diff --git a/wcs/ctl/check_hobos.py b/wcs/ctl/check_hobos.py
index 4dd3d0e0..87cb6b5b 100644
--- a/wcs/ctl/check_hobos.py
+++ b/wcs/ctl/check_hobos.py
@@ -380,7 +380,12 @@ class CmdCheckHobos(Command):
             if not service_url.endswith('/'):
                 service_url += '/'
             if service.get('slug'):
-                variables['%s_url' % service.get('slug').replace('-', '_')] = service_url
+                prefix = service.get('slug').replace('-', '_')
+                if prefix.startswith('_hobo_'):
+                    prefix = 'tenant_%s' % prefix[6:]
+                elif prefix.startswith('_interco_'):
+                    prefix = prefix[1:]
+                variables['%s_url' % prefix] = service_url

             if not service.get('secret_key'):
                 continue

mais ça ne me semble pas le bon endroit.

Je verrais plutôt des variables calculées par hobo et diffusées via hobo-deploy, ça sera automatiquement pris en charge par tous les systèmes hobotisés.

Formats disponibles : Atom PDF