diff --git a/check_process b/check_process new file mode 100644 index 0000000..9543caa --- /dev/null +++ b/check_process @@ -0,0 +1,26 @@ +## Test complet + auto_remove=1 + # Manifest + domain="domain.tld" (DOMAIN) + path="/leed" (PATH) + admin="john" (USER) + password="pass" (PASSWORD) + language="fr" + market="Yes" + is_public="Yes" (PUBLIC|public=Yes|private=No) + # Checks + setup_sub_dir=1 + setup_root=1 + setup_nourl=0 + setup_private=1 + setup_public=1 + upgrade=1 + backup_restore=1 + multi_instance=1 + wrong_user=1 + wrong_path=1 + incorrect_path=1 + corrupt_source=0 + fail_download_source=0 + port_already_use=1 + final_path_already_use=0 diff --git a/scripts/.fonctions b/scripts/.fonctions index cfb9d49..c225234 100755 --- a/scripts/.fonctions +++ b/scripts/.fonctions @@ -7,13 +7,13 @@ YNH_VERSION () { # Renvoi le numéro de version de la moulinette Yunohost CHECK_VAR () { # Vérifie que la variable n'est pas vide. # $1 = Variable à vérifier # $2 = Texte à afficher en cas d'erreur - test -n "$1" || (echo "$2" && false) + test -n "$1" || (echo "$2" && false >&2) } EXIT_PROPERLY () { # Provoque l'arrêt du script en cas d'erreur. Et nettoye les résidus. trap '' ERR 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!!" + echo -e "!!\n $app install's script has encountered an error. Installation was cancelled.\n!!" >&2 CLEAN_SETUP # Appel la fonction de nettoyage spécifique du script install. @@ -40,7 +40,7 @@ TRAP_OFF () { # Ignoring signal capture until TRAP_ON CHECK_USER () { # Vérifie la validité de l'user admin # $1 = Variable de l'user admin. - sudo yunohost user list --json | grep -q "\"username\": \"$1\"" || (echo "Wrong admin" && false) + sudo yunohost user list --json | grep -q "\"username\": \"$1\"" || (echo "Wrong admin" && false >&2) } CHECK_PATH () { # Vérifie la présence du / en début de path. Et son absence à la fin. @@ -60,7 +60,7 @@ CHECK_FINALPATH () { # Vérifie que le dossier de destination n'est pas déjà u final_path=/var/www/$app if [ -e "$final_path" ] then - echo "This path already contains a folder" + echo "This path already contains a folder" >&2 false fi } @@ -81,7 +81,7 @@ SETUP_SOURCE () { # Télécharge la source, décompresse et copie dans $final_pa # $1 = Nom de l'archive téléchargée. wget -nv --show-progress -i ../sources/source_url -O $1 # Vérifie la somme de contrôle de la source téléchargée. - md5sum -c ../sources/source_md5 --status || (echo "Corrupt source" && false) + md5sum -c ../sources/source_md5 --status || (echo "Corrupt source" && false >&2) # Décompresse la source if [ "$(echo ${1##*.})" == "gz" ]; then tar -x -f $1 diff --git a/scripts/backup b/scripts/backup index 0bfeb28..a73c193 100644 --- a/scripts/backup +++ b/scripts/backup @@ -1,12 +1,8 @@ #!/bin/bash -source .fonctions # Charge les fonctions génériques habituellement utilisées dans le script - # Récupère les infos de l'application. -YNH_VERSION # Récupère le numéro de version de Yunohost. -if [ $version = "2.4" ]; then - app=$YNH_APP_INSTANCE_NAME -else +app=$YNH_APP_INSTANCE_NAME +if [ -z "$app" ]; then app=leed fi final_path=$(sudo yunohost app setting $app final_path) @@ -28,3 +24,7 @@ sudo cp -a /etc/nginx/conf.d/$domain.d/$app.conf $backup_dir/nginx.conf # Copy dedicated php-fpm process to backup folder sudo cp -a /etc/php5/fpm/pool.d/$app.conf $backup_dir/php-fpm.conf sudo cp -a /etc/php5/fpm/conf.d/20-$app.ini $backup_dir/php-fpm.ini + +# Backup db +root_pwd=$(sudo cat /etc/yunohost/mysql) +sudo mysqldump -u root -p$root_pwd --no-create-db $app --result-file="$backup_dir/db.sql" diff --git a/scripts/restore b/scripts/restore index 297dfe7..311f164 100644 --- a/scripts/restore +++ b/scripts/restore @@ -1,12 +1,8 @@ #!/bin/bash -source .fonctions # Charge les fonctions génériques habituellement utilisées dans le script - # Récupère les infos de l'application. -YNH_VERSION # Récupère le numéro de version de Yunohost. -if [ $version = "2.4" ]; then - app=$YNH_APP_INSTANCE_NAME -else +app=$YNH_APP_INSTANCE_NAME +if [ -z "$app" ]; then app=leed fi final_path=$(sudo yunohost app setting $app final_path)