Projet

Général

Profil

Tâche #29186

Scénario #29284: Traitement express MEN (48-50)

Les fonctions IHM EOLE provoquent des plantages dans Screen

Ajouté par Daniel Dehennin il y a plus de 4 ans. Mis à jour il y a plus de 4 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
22/10/2019
Echéance:
% réalisé:

100%

Restant à faire (heures):
0.0

Description

C’est un problème rencontré plusieurs fois sur les serveurs Hâpy de la Réunion dont les instances 2.6.2 plantent après les Upgrade-Auto successif depuis 2.4.2.

Il s’avère que la commande EchoGras utilise des constructions du style :

    [ "$FANCYTTY" = 1 ] && $TPUT setaf $2

Le problème est le suivant :

  • dans une console screen, $FANCYTTY vaut 0
  • la ligne renvoie donc le code 1
  • dans un script avec set -e, le script plante à cause de l’affichage d’un message.

Révisions associées

Révision 75524a58 (diff)
Ajouté par Joël Cuissinat il y a plus de 4 ans

Update some tests to avoid inexpected errors with "set -e"

Ref: #29186

Historique

#1 Mis à jour par Daniel Dehennin il y a plus de 4 ans

Un contournement est d’exporter une autre valeur pour TERM à l’intérieur d’une session screen :

export TERM=xterm

#2 Mis à jour par Joël Cuissinat il y a plus de 4 ans

  • Tâche parente changé de #29069 à #29216

#3 Mis à jour par Joël Cuissinat il y a plus de 4 ans

  • Tâche parente changé de #29216 à #29284

#4 Mis à jour par Joël Cuissinat il y a plus de 4 ans

  • Statut changé de Nouveau à En cours

#5 Mis à jour par Joël Cuissinat il y a plus de 4 ans

  • Assigné à mis à Joël Cuissinat

#6 Mis à jour par Joël Cuissinat il y a plus de 4 ans

L'instance dans screen passe pour un Eolebase 2.6.2 mais plante effectivement pour Hâpy à cause du problème évoqué :

Mise à jour de la base de données ONE
run-parts: /usr/share/eole/posttemplate/90-one-db exited with return code 1
Erreur : posttemplate

Dans ihm.sh, il y a uniquement 6 lignes à corriger et assez peu d'autres cas dans /usr/lib/eole visiblement...

root@hapy:~# cat testroot
set -e
. /usr/lib/eole/utils.sh
only_root
echo "Je suis bien root" 
root@hapy:~# bash testroot

Ah si, il y a quelques cas dans diagnose.sh mais le problème c'est qu'il y a plein de commandes exécutées directement dans cette librairies et que le code de retour est testé juste derrière ;)

#7 Mis à jour par Joël Cuissinat il y a plus de 4 ans

  • Statut changé de En cours à Résolu
  • % réalisé changé de 0 à 100

#8 Mis à jour par Daniel Dehennin il y a plus de 4 ans

Tout est bien empaqueté et les journaux sont à jour.

#9 Mis à jour par Daniel Dehennin il y a plus de 4 ans

  • Statut changé de Résolu à Fermé
  • Restant à faire (heures) mis à 0.0

Formats disponibles : Atom PDF