Projet

Général

Profil

Development #21605

hobo_deploy : le hobo.json stocké dans le répertoire du tenants devrait être identique à celui passé à la commande hobo_deploy

Ajouté par Emmanuel Cazenave il y a environ 6 ans. Mis à jour il y a 5 mois.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
02 février 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Dans wcs/ctl/check_hobos.py :

  • l'objet self.all_services est créé à partir du hobo.json passé à la commande hobo_deploy
  • plus loin:
service['base_url'] = base_url[:-1]

ce qui altère l'objet self.all_services

  • encore plus loin :
atomic_write(os.path.join(pub.app_dir, 'hobo.json'), json.dumps(self.all_services))

qui écrit dans le répertoire des tenants un hobo.json altéré par rapport à ce qu'il était avant d'être passé à la commande hobo_deploy.

Tombé là dessus en essayant de reproduire un hobo_deploy exécuté par un agent hobo, qui invoque la commande de la façon suivante:
'... hobo_deploy https://tenant-name/ < hobo.json'
Relancer la commande à la main comme suit: '... hobo_deploy https://tenant-name/ /var/lib/wcs/tenant-name/hobo.json' échoue ici

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:
            return

parce que 'https://tenant-name/' n'est pas présent dans '/var/lib/wcs/tenant-name/hobo.json' où 'https://tenant-name' s'y trouve à la place.


Fichiers

Révisions associées

Révision 2c4d065b (diff)
Ajouté par Frédéric Péters il y a 5 mois

misc: do not alter base_url in stored hobo.json (#21605)

Historique

#1

Mis à jour par Thomas Noël il y a environ 6 ans

une autre façon de voir les choses, c'est d'être plus souple sur la recherche du base_url, avec ou sans / final... (parce que modifier le hobo.json qu'on gère actuellement, je ne suis pas sûr à ce stade)

#2

Mis à jour par Frédéric Péters il y a environ 6 ans

L'hobo.json n'est pas utilisé, juste stocké pour la forme (#7272), donc il me semble qu'on peut sans risque le stocker non-altéré (modulo le this qui est ajouté et utilisé lors du redeploy).

#3

Mis à jour par Thomas Noël il y a environ 6 ans

Same player, shoot again. Nettoyage du / final uniquement dans les moments où on gère de la config d'un service wcs (site-options.ini et config.pck)

#4

Mis à jour par Robot Gitea il y a 5 mois

  • Statut changé de Nouveau à En cours
  • Assigné à mis à Frédéric Péters

Frédéric Péters (fpeters) a ouvert une pull request sur Gitea concernant cette demande :

#5

Mis à jour par Robot Gitea il y a 5 mois

  • Statut changé de En cours à Solution proposée
#6

Mis à jour par Robot Gitea il y a 5 mois

  • Statut changé de Solution proposée à Solution validée

Nicolas Roche (nroche) a approuvé une pull request sur Gitea concernant cette demande :

#7

Mis à jour par Robot Gitea il y a 5 mois

  • Statut changé de Solution validée à Résolu (à déployer)

Frédéric Péters (fpeters) a mergé une pull request sur Gitea concernant cette demande :

#8

Mis à jour par Transition automatique il y a 5 mois

  • Statut changé de Résolu (à déployer) à Solution déployée
#9

Mis à jour par Transition automatique il y a 3 mois

Automatic expiration

Formats disponibles : Atom PDF