1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/leed_ynh.git synced 2024-09-03 19:26:32 +02:00

Correction backup-restore + check_process

This commit is contained in:
Maniack Crudelis 2016-06-29 00:13:30 +02:00
parent 365e6ff0bf
commit ad4ce14bd2
4 changed files with 39 additions and 17 deletions

26
check_process Normal file
View file

@ -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

View file

@ -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

View file

@ -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"

View file

@ -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)