From 41c9597f2c0ebb52bd8d6d0d1b86f88d39c367b4 Mon Sep 17 00:00:00 2001 From: polytan02 Date: Sat, 24 Dec 2016 02:02:06 +0000 Subject: [PATCH] Activate TRAP for install script --- scripts/install | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index 18ea222..99f5855 100755 --- a/scripts/install +++ b/scripts/install @@ -5,7 +5,32 @@ #source fonctions # Active trap pour arrêter le script si une erreur est détectée. -#TRAP_ON +EXIT_PROPERLY () { # Provoque l'arrêt du script en cas d'erreur. Et nettoye les résidus. + exit_code=$? + if [ "$exit_code" -eq 0 ]; then + exit 0 # Quitte sans erreur si le script se termine correctement. + fi + trap '' EXIT + set +eu + echo -e "\e[91m \e[1m" # Shell in light red bold + echo -e "!!\n $app install's script has encountered an error. Installation was cancelled.\n!!" >&2 + + if type -t CLEAN_SETUP > /dev/null; then # Vérifie l'existance de la fonction avant de l'exécuter. + CLEAN_SETUP # Appel la fonction de nettoyage spécifique du script install. + fi + + # Compense le bug de ssowat qui ne supprime pas l'entrée de l'app en cas d'erreur d'installation. + sudo sed -i "\@\"$domain$path/\":@d" /etc/ssowat/conf.json + + ynh_die +} + +TRAP_ON () { # Activate signal capture + set -eu # Exit if a command fail, and if a variable is used unset. + trap EXIT_PROPERLY EXIT # Capturing exit signals on shell script +} + +TRAP_ON # Source app helpers source /usr/share/yunohost/helpers