1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/radicale_ynh.git synced 2024-09-03 20:16:14 +02:00
radicale_ynh/scripts/restore
2016-08-05 17:00:50 +02:00

56 lines
1.7 KiB
Bash

#!/bin/bash
# Récupère les infos de l'application.
ynh_version=$(sudo yunohost -v | grep "moulinette:" | cut -d' ' -f2 | cut -d'.' -f1,2) # Récupère le numéro de version de Yunohost.
if [ $ynh_version = "2.4" ]; then
app=$YNH_APP_INSTANCE_NAME
else
app=radicale
fi
final_path=$(sudo yunohost app setting $app final_path)
domain=$(sudo yunohost app setting $app domain)
infcloud=$(sudo yunohost app setting $app infcloud)
# The parameter $1 is the uncompressed restore directory location
backup_dir=$1/apps/$app
# Restore sources & data
sudo cp -a $backup_dir/sources/. $final_path
# Restore Nginx and YunoHost parameters
sudo cp -a $backup_dir/yunohost/. /etc/yunohost/apps/$app
sudo cp -a $backup_dir/nginx.conf /etc/nginx/conf.d/$domain.d/$app.conf
# Restore radicale configuration
sudo cp -a $backup_dir/etc/. /etc/$app
# Restore virtualenv
sudo cp -a $backup_dir/virtualenv/. /opt/yunohost/$app
# Set permissions to radicale directory
if ! grep -q "^radicale:" /etc/passwd # Test l'existence de l'utilisateur
then # Si il n'existe pas, l'user radicale est créé
sudo useradd radicale -d /opt/yunohost/$app
fi
sudo chown radicale: -R /opt/yunohost/$app
# Restore uwsgi config
sudo cp -a $backup_dir/uwsgi_conf /etc/uwsgi/apps-available/radicale.ini
sudo ln -s /etc/uwsgi/apps-available/radicale.ini /etc/uwsgi/apps-enabled/
# Copy dedicated php-fpm process to backup folder
if [ "$infcloud" = "1" ]
then
sudo cp -a $backup_dir/php-fpm.conf /etc/php5/fpm/pool.d/$app.conf
sudo cp -a $backup_dir/php-fpm.ini /etc/php5/fpm/conf.d/20-$app.ini
sudo service php5-fpm reload
fi
# Restaure la configuration de logrotate
sudo cp -a $backup_dir/logrotate /etc/logrotate.d/$app
# Restart webserver
sudo service nginx reload
# Restart uwsgi
sudo service uwsgi restart