Projet

Général

Profil

Development #64868

Avoir un menu maintenance

Ajouté par Emmanuel Cazenave il y a presque 2 ans. Mis à jour il y a presque 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
05 mai 2022
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Où on pourrait :

  • activer/désactiver la page 'maintenance' (et pourquoi pas au passage permettre la personnalisation du message, permettre de rajouter des IP passthrough)
  • activeŕ/désactiver les cron

Fichiers


Demandes liées

Lié à Hobo - Development #15326: Contrôle d'accès à la plateformeNouveau07 mars 2017

Actions
Lié à Publik - Support #57729: Migration d'instances de Publik : changement de nom de domaineFermé11 octobre 2021

Actions
Lié à Intégrations graphiques Publik - Development #65437: Gabarit pour la page de maintenanceFermé19 mai 2022

Actions

Révisions associées

Révision 7c4d274d (diff)
Ajouté par Emmanuel Cazenave il y a presque 2 ans

start the maintenance application (#64868)

Historique

#1

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

#2

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

  • Lié à Support #57729: Migration d'instances de Publik : changement de nom de domaine ajouté
#3

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

De quoi activer/désactiver la page de maintenance, les cron.

Plus de quoi poser un entête HTTP qui passe au travers.

#4

Mis à jour par Paul Marillonnet il y a presque 2 ans

Je teste en local : j’active le mode maintenance, qui fonctionne partout y compris pour cette page hobo /maintenance/. Est-ce vraiment le comportement souhaité ? Ça me surprend mais si effectivement c’est que l’on veut, peut-être simplement mettre un message indiquant que si l’admin ne précise pas d’IP ou d’entête pass through, il n’aura plus accès à cette page pour désactiver ce mode de maintenance.

#5

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

Je suis d'accord, je suis d'avis de faire encore plus simple : laisser passer les requêtes pour hobo en entier.

Mais c'est hors périmètre de ce ticket qui concerne le menu, du coup #65428.

#6

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

Emmanuel Cazenave a écrit :

Mais c'est hors périmètre de ce ticket qui concerne le menu, du coup #65428.

Qui ne fonctionne pas du tout.

Du coup retour à la question d'afficher un message si pas d'IP pass through configurées.

On affiche déjà en mode warning le fait qu'aucune IP n'est configurée. Mais je trouve cet affichage trompeur parce qu'il ne va piocher l'info que sur la brique hobo elle même, ça ne dit rien du fait que les même IPS auront été déclarées ou non en pass through sur les autres briques. Or si ce n'est pas fait sur le portail agent, plouf on retombe dans #65428#note-2.

Je serais pour ne pas trop se prendre la tête, ne rien afficher sur les IPS plutôt que ces messages trompeurs.

A la place, en mécanisme de secours écrire une commande de management qui permette de débrailler la page de maintenance ? (l’alternative étant d'aller modifier la DB de hobo pour shooter dans la table des variables l'entrée SETTING_MAITENANCE_PAGE).

#7

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

ça ne dit rien du fait que les même IP auront été déclarées ou non en pass through sur les autres briques

Ça correspondrait à quoi, un provisionning/rabbitmq de ces adresses vers les autres modules qui se serait mal passé ?

Je dis ça mais sur les captures je ne vois aucun paramétrage d'IP, donc je me dis que je n'ai aucune idée de cette histoire et de comment tout ça est supposé fonctionner. Je trouve qu'il y a eu une trop grande parcellisation en tickets variés de ce sujet "page de maintenance", que ça peut être l'occasion de redonner une vue d'ensemble).

#8

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

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

Pour la vue d'ensemble le fonctionnement actuel est (en supposant ce ticket déjà mergé) :

- pour les IP pass trough on ne propose pas d'écran de configuration, du coup ça doit être mis dans du setting.json tenant par tenant ou du settings.d brique par brique
- pour les autres réglages (activation page de maintenance/message personnalisé page de maintenance/header HTTP pass through/désactivation des cron) je propose ici une page de configuration qui stocke l'info dans des variables SETTING_XXXX

L'idée de ne pas proposer la configuration par écran pour les IP né d'une conversation avec Thomas :

- pour avoir un public encore fonctionnel pour un superuser malgré la page de maintenance activée il faut que le superuser puisse faire des requêtes mais aussi que ça passe entre les briques Publik (genre pour exécuter depuis la machine hobo une commande de renommage de tenant qui à la fin va pinger le service, l'agent hobo qui fait des appels aux urls de metadata, etc)

- du coup on s'est dit que c'était trop casse gueule d'ouvrir ça à un paramétrage par écran, qu'on ferait ça dans les settings.d via puppet, qu'on y mettrait les IPS des machines qui vont bien plus l'IP sortante du VPN d'EO et basta.

#9

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

Merci pour ce récap,

- pour les IP pass trough on ne propose pas d'écran de configuration, du coup ça doit être mis dans du setting.json tenant par tenant ou du settings.d brique par brique

Ok d'où la grosse affaire ici de "ça peut avoir été fait n'importe comment, zéro fiabilité pour donner l'info sur cet écran".

Mais de cette situation je ne comprends alors pas l'affaire "laisser passer les requêtes faites à hobo" de l'autre ticket mais en relisant le ticket je vois "En cas de loupé sur la configuration des IP", ok pigé.

Dans l'état, perso,

  • sur le fond les choses devraient pouvoir se configurer via le web, ok pour garder ça pour un jour plus tard;
  • c'est juste inhumain d'avoir à aller poser des fichiers de config partout manuellement, on ne fera jamais ça pour passer en maintenance;
  • mais en fait on ne fera jamais ça et ça n'a aucune importance parce qu'on va juste poser partout les IP concernées une fois pour toutes, que ça sera posé totalement indépendamment de la maintenance, bien avant;
  • donc totalement ok pour ne rien mentionner à ce sujet ici;
  • et si ça bloque l'accès too bad, c'est que la configuration globale en amont a été zappée, et ça demande de toute façon intervention sur les serveurs. (et me voilà à accepter le rejet de #65428);
  • je n'afficherais même pas le lien vers l'écran de configuration maintenance si le paramétrage d'adresses IP n'a pas été fait. (i.e. s'il n'a pas été fait ça va merder à tous les coups, cet écran ne peut pas marcher);
#10

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

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

  • donc totalement ok pour ne rien mentionner à ce sujet ici;
  • je n'afficherais même pas le lien vers l'écran de configuration maintenance si le paramétrage d'adresses IP n'a pas été fait.

J'ai tenu compte.

Également tenu compte de ma propre remarque : "A la place, en mécanisme de secours écrire une commande de management qui permette de débrailler la page de maintenance".

Et aussi intégration de #65126 et #65143 pour éviter la dispersion.

#11

Mis à jour par Paul Marillonnet il y a presque 2 ans

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

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

  • je n'afficherais même pas le lien vers l'écran de configuration maintenance si le paramétrage d'adresses IP n'a pas été fait. (i.e. s'il n'a pas été fait ça va merder à tous les coups, cet écran ne peut pas marcher);

Oui, d’accord avec ça. Pour le reste j’ai testé en local, et le code est succinct et clair, c’est ok pour moi.

#12

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

#13

Mis à jour par Emmanuel Cazenave il y a presque 2 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 7c4d274df954853cac49e30b9cb167749ad39e43
Author: Emmanuel Cazenave <ecazenave@entrouvert.com>
Date:   Wed May 11 12:27:24 2022 +0200

    start the maintenance application (#64868)
#14

Mis à jour par Transition automatique il y a presque 2 ans

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

Mis à jour par Transition automatique il y a plus d'un an

Automatic expiration

Formats disponibles : Atom PDF