#!/bin/bash # Récupère les infos de l'application. app=$YNH_APP_INSTANCE_NAME # Source app helpers source /usr/share/yunohost/helpers final_path=$(ynh_app_setting_get $app final_path) domain=$(ynh_app_setting_get $app domain) infcloud=$(ynh_app_setting_get $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 # Check depends installation sudo apt-get install -y python-pip python-virtualenv python-dev libldap2-dev libsasl2-dev libssl-dev uwsgi uwsgi-plugin-python # Restore virtualenv sudo mkdir -p /opt/yunohost/$app sudo cp -a $backup_dir/virtualenv/. /opt/yunohost/$app/ # Set permissions to radicale directory if ! ynh_system_user_exists "radicale" 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 sudo chown -R radicale: $final_path sudo mkdir -p /var/log/$app sudo touch /var/log/$app/$app.log sudo chown radicale -R /var/log/$app # Restore radicale configuration sudo cp -a $backup_dir/etc/. /etc/$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