From ff67d8535f951ce6bd80f703452c84d231dc042d Mon Sep 17 00:00:00 2001
From: Emmanuel Viennet <emmanuel.viennet@gmail.com>
Date: Tue, 11 Feb 2025 14:11:02 +0100
Subject: [PATCH] =?UTF-8?q?Scripts=20sauvegarde/restore:=20am=C3=A9liore?=
 =?UTF-8?q?=20affichages?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 sco_version.py                |  2 +-
 tools/restore_scodoc9_data.sh | 13 ++++++++++---
 tools/save_scodoc9_data.sh    | 16 ++++++++++------
 3 files changed, 21 insertions(+), 10 deletions(-)

diff --git a/sco_version.py b/sco_version.py
index 032ec0c62..007858c8e 100644
--- a/sco_version.py
+++ b/sco_version.py
@@ -3,7 +3,7 @@
 
 "Infos sur version ScoDoc"
 
-SCOVERSION = "9.7.62"
+SCOVERSION = "9.7.63"
 
 SCONAME = "ScoDoc"
 
diff --git a/tools/restore_scodoc9_data.sh b/tools/restore_scodoc9_data.sh
index fad1778af..c8861dcb3 100755
--- a/tools/restore_scodoc9_data.sh
+++ b/tools/restore_scodoc9_data.sh
@@ -8,6 +8,8 @@
 #
 # E. Viennet, Sept 2021
 #
+set -euo pipefail
+
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
 source "$SCRIPT_DIR/config.sh"
 source "$SCRIPT_DIR/utils.sh"
@@ -37,11 +39,16 @@ then
   usage
 elif [ $# -eq 1 ]
 then
-  echo "restauration des données et de la configuration originale (production)"
+  echo
+  echo "Restauration des données et de la configuration originale (production)"
+  echo
   SRC="$1"
   DB_DEST="SCODOC"
+  KEEP_ENV=""
 else
-  echo "restauration des données dans la configuration actuelle"
+  echo
+  echo "Restauration des données dans la configuration actuelle"
+  echo
   DB_CURRENT=$(su -c "(cd $SCODOC_DIR && source venv/bin/activate && flask scodoc-database -n)" "$SCODOC_USER")
   DB_DEST="$DB_CURRENT"
   KEEP_ENV="Y"
@@ -62,7 +69,7 @@ echo
 echo "Attention: TOUTES LES DONNEES DE CE SCODOC SERONT REMPLACEES !"
 echo "Notamment, tous les utilisateurs et départements existants seront effacés !"
 echo
-echo "La base SQL $DB_CURRENT sera effacée et remplacée !!!"
+echo "La base SQL $DB_DEST sera effacée et remplacée !!!"
 echo
 # Préparation si une copie 'antique' doit être effacée, demander confirmation, puis effacer
 SCODOC_VAR_OLD=${SCODOC_VAR_DIR}.old
diff --git a/tools/save_scodoc9_data.sh b/tools/save_scodoc9_data.sh
index 6bcf22934..f8ff51558 100755
--- a/tools/save_scodoc9_data.sh
+++ b/tools/save_scodoc9_data.sh
@@ -2,13 +2,14 @@
 
 #
 # ScoDoc: save all user data (database, configs, images, archives...) in separate directory
-# 
+#
 #  Utile pour migrer ScoDoc version 9 (et plus) d'un serveur a un autre
 #  Executer en tant que scodoc sur le serveur d'origine.
 #  Utiliser - pour sortir sur la sortie standard (eg pipe dans ssh...)
 #
 # E. Viennet, Sept 2011, Aug 2020, Aug 21
 #
+set -euo pipefail
 
 SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
 source "$SCRIPT_DIR/config.sh"
@@ -20,17 +21,20 @@ then
  exit 1
 fi
 
-echo "vérification de la configuration..."
-DB_CURRENT=$(cd $SCODOC_DIR && source venv/bin/activate && flask scodoc-database -n)
-if [ $DB_CURRENT != 'SCODOC' ]; then
-  echo "Ce script ne peut transférer les données que depuis une base nommée SCODOC (c'est normalement le cas pour un serveur en production)"
+echo "Vérification de la configuration..."
+DB_CURRENT=$(cd "$SCODOC_DIR" && source venv/bin/activate && flask scodoc-database -n | tail -1)
+if [ "$DB_CURRENT" != 'SCODOC' ]; then
+  echo "Ce script ne peut transférer les données que depuis une base nommée SCODOC"
+  echo "(c'est normalement le cas pour un serveur en production)"
+  echo "La base actuelle est $DB_CURRENT"
   echo "Annulation"
   exit 1
 fi
 
+echo
 echo "Ce script est utile pour transférer toutes les données d'un serveur ScoDoc 9"
 echo "à un autre ScoDoc 9."
-echo "Il est vivement recommandé de mettre à jour votre ScoDoc avant."
+echo "Il est vivement recommandé de mettre à jour votre ScoDoc avant, si ce n'est pas déjà fait."
 echo ""
 echo -n "Voulez-vous poursuivre cette sauvegarde ? (y/n) [n]"
 read -r ans
-- 
GitLab