2017-01-08 12:17:57 +01:00
|
|
|
#!/bin/bash
|
2017-07-03 21:07:56 +02:00
|
|
|
# to test the functionnality :
|
|
|
|
# yunohost backup create -n "bozon-test" --ignore-system --apps bozon
|
|
|
|
# yunohost app remove bozon
|
|
|
|
# yunohost backup restore "bozon-test"
|
2016-03-23 19:30:43 +01:00
|
|
|
|
2017-07-26 21:32:00 +02:00
|
|
|
set -eu
|
2017-07-03 21:07:56 +02:00
|
|
|
if [ ! -e _common.sh ]; then
|
|
|
|
# Fetch helpers file if not in current directory
|
2017-09-22 19:55:09 +02:00
|
|
|
cp ../settings/scripts/_common.sh ./_common.sh
|
|
|
|
chmod a+rx _common.sh
|
2017-07-03 21:07:56 +02:00
|
|
|
fi
|
|
|
|
source _common.sh
|
2016-10-13 06:51:38 +02:00
|
|
|
source /usr/share/yunohost/helpers
|
2016-05-23 21:40:55 +02:00
|
|
|
|
2017-07-03 21:07:56 +02:00
|
|
|
# manage script failure
|
|
|
|
ynh_abort_if_errors
|
|
|
|
|
|
|
|
# retrieve arguments
|
2016-10-13 06:51:38 +02:00
|
|
|
app=$YNH_APP_INSTANCE_NAME
|
|
|
|
domain=$(ynh_app_setting_get "$app" domain)
|
2017-07-03 21:07:56 +02:00
|
|
|
path_url=$(ynh_app_setting_get "$app" path)
|
|
|
|
backup_core_only=$(ynh_app_setting_get "$app" backup_core_only)
|
2016-05-23 21:40:55 +02:00
|
|
|
|
2016-04-04 20:01:54 +02:00
|
|
|
# definie useful vars
|
2017-07-03 21:07:56 +02:00
|
|
|
final_path="/var/www/$app"
|
|
|
|
data_path="/home/yunohost.app/$app"
|
|
|
|
nginx_conf="/etc/nginx/conf.d/$domain.d/$app.conf"
|
2017-07-07 17:03:57 +02:00
|
|
|
phpfpm_conf="/etc/php5/fpm/pool.d/$app.conf"
|
2016-10-13 06:51:38 +02:00
|
|
|
|
2017-07-03 21:07:56 +02:00
|
|
|
# check domain/path availability
|
|
|
|
ynh_webpath_available "$domain" "$path_url"
|
|
|
|
myynh_check_path "$final_path"
|
2016-10-13 06:51:38 +02:00
|
|
|
|
|
|
|
# add required packages
|
2017-07-03 21:07:56 +02:00
|
|
|
ynh_install_app_dependencies "$PKG_DEPENDENCIES"
|
|
|
|
|
|
|
|
# create a dedicated system user
|
|
|
|
ynh_system_user_create "$app"
|
2016-04-04 20:01:54 +02:00
|
|
|
|
2017-07-03 21:07:56 +02:00
|
|
|
# restore sconf files
|
|
|
|
ynh_restore_file "$nginx_conf"
|
|
|
|
ynh_restore_file "$phpfpm_conf"
|
2016-04-04 20:01:54 +02:00
|
|
|
|
2017-07-07 17:03:57 +02:00
|
|
|
# restore source
|
2017-07-03 21:07:56 +02:00
|
|
|
ynh_restore_file "$final_path"
|
2016-10-13 06:51:38 +02:00
|
|
|
|
2017-07-07 17:03:57 +02:00
|
|
|
# restore data only if there is no data
|
2017-07-03 21:07:56 +02:00
|
|
|
if [ ! -d "$data_path" ]; then
|
|
|
|
if [ $backup_core_only -eq 0 ]; then
|
|
|
|
ynh_restore_file "$data_path"
|
|
|
|
else
|
|
|
|
myynh_create_dir "$data_path/uploads"
|
|
|
|
myynh_create_dir "$data_path/thumbs"
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
echo "$data_path already exists and will not be overwritten" >&2
|
|
|
|
fi
|
2016-05-23 20:59:08 +02:00
|
|
|
|
2017-07-07 17:03:57 +02:00
|
|
|
# set permissions
|
|
|
|
myynh_set_permissions
|
|
|
|
|
2017-07-03 21:07:56 +02:00
|
|
|
# restart services
|
2017-09-22 19:55:09 +02:00
|
|
|
systemctl reload php5-fpm
|
|
|
|
systemctl reload nginx
|