mirror of
https://github.com/YunoHost-Apps/radicale_ynh.git
synced 2024-09-03 20:16:14 +02:00
64 lines
1.9 KiB
Bash
64 lines
1.9 KiB
Bash
#!/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
|