Skip to content
Snippets Groups Projects
Commit db9acb67 authored by Emmanuel Viennet's avatar Emmanuel Viennet
Browse files

détails bash

parent 8a415984
Branches
No related tags found
No related merge requests found
......@@ -32,32 +32,35 @@ usage() {
if (($# < 1 || $# > 2))
then
usage
elif [ $# -eq 2 -a $1 != '--keep-env' -a $2 != '--keep-env' ] ; then
elif [ $# -eq 2 ] && [ "$1" != "--keep-env" ] && [ "$2" != "--keep-env" ]
then
usage
elif [ $# -eq 1 ] ; then
elif [ $# -eq 1 ]
then
echo "restauration des données et de la configuration originale (production)"
SRC=$1
SRC="$1"
DB_DEST="SCODOC"
else
echo "restauration des données dans la configuration actuelle"
DB_CURRENT=$(su -c "(cd $SCODOC_DIR && source venv/bin/activate && flask scodoc-database -n)")
DB_DEST="$DB_CURRENT"
KEEP_ENV=Y
if [ $1 = '--keep-env' ]; then
SRC=$2
KEEP_ENV="Y"
if [ "$1" = "--keep-env" ]
then
SRC="$2"
else
SRC=$1
SRC="$1"
fi
fi
DB_DUMP="${SCODOC_VAR_DIR}"/SCODOC.dump
# Safety check
echo "Ce script va remplacer les donnees de votre installation ScoDoc par celles"
echo "Ce script va remplacer les données de votre installation ScoDoc par celles"
echo "enregistrées dans le fichier fourni."
echo "Ce fichier doit avoir ete cree par le script save_scodoc9_data.sh."
echo "Ce fichier doit avoir été créé par le script save_scodoc9_data.sh."
echo
echo "Attention: TOUTES LES DONNEES DE CE SCODOC SERONT REMPLACEES !"
echo "Notamment, tous les utilisateurs et departements existants seront effaces !"
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
......@@ -65,27 +68,27 @@ echo
SCODOC_VAR_OLD=${SCODOC_VAR_DIR}.old
if [ -e "$SCODOC_VAR_DIR" ] && [ -e "$SCODOC_VAR_OLD" ]
then
echo "une ancienne sauvegarde ('$SCODOC_VAR_OLD' en date du $(stat -c %w $SCODOC_VAR_OLD) ) va être effacée."
echo "Une ancienne sauvegarde (\"$SCODOC_VAR_OLD\" en date du $(stat -c %w "$SCODOC_VAR_OLD") ) va être effacée."
echo
fi
if [ ! -z $KEEP_ENV ]
if [ -n "$KEEP_ENV" ]
then
echo -n "restauration des données sans changement de configuration: Assurez-vous d'avoir arrété le serveur scodoc."
echo -n "Restauration des données sans changement de configuration: Assurez-vous d'avoir arrêté le serveur scodoc."
echo
fi
echo -n "Voulez vous poursuivre la restauration ? (y/n) [n]"
echo -n "Voulez-vous poursuivre la restauration ? (y/n) [n]"
read -r ans
if [ ! "$(norm_ans "$ans")" = 'Y' ]
if [ ! "$(norm_ans "$ans")" = "Y" ]
then
echo "Annulation de la restauration par l\'utilisateur"
exit 1
fi
rm -rf $SCODOC_VAR_OLD || die "Erreur suppression $SCODOC_VAR_OLD"
rm -rf "$SCODOC_VAR_OLD" || die "Erreur suppression $SCODOC_VAR_OLD"
# -- Stop ScoDoc
if [ -z $KEEP_ENV ]
if [ -z "$KEEP_ENV" ]
then
echo "Arrêt de scodoc9..."
systemctl stop scodoc9
......@@ -104,7 +107,7 @@ fi
# -- Ouverture archive
echo "Ouverture archive $SRC..."
(cd $(dirname "$SCODOC_VAR_DIR"); tar xfz "$SRC") || die "Error opening archive"
(cd "$(dirname "$SCODOC_VAR_DIR")"; tar xfz "$SRC") || die "Error opening archive"
# -- Ckeck/fix owner
echo "Vérification du propriétaire..."
......@@ -121,7 +124,7 @@ su -c "createdb $DB_DEST" "$SCODOC_USER" || die "Erreur création db"
if [ ! -z $KEEP_ENV ] ; then
echo "conservation de la configuration actuelle"
cp "$SCODOC_VAR_OLD"/.env "$SCODOC_VAR_DIR"/.env
cp -p "$SCODOC_VAR_OLD"/.env "$SCODOC_VAR_DIR"/.env
echo "récupération des données..."
su -c "pg_restore -f - $DB_DUMP | psql -q $DB_DEST" "$SCODOC_USER" >/dev/null || die "Erreur chargement/renommage de la base SQL"
su -c "(cd $SCODOC_DIR && source venv/bin/activate && flask db upgrade)" "$SCODOC_USER"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment