1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/zeronet_ynh.git synced 2024-09-03 17:46:12 +02:00
zeronet_ynh/scripts/restore
2020-10-22 21:15:55 +02:00

61 lines
1.8 KiB
Bash
Executable file

#!/usr/bin/env bash
source /usr/share/yunohost/helpers
# TODO: enable with fix of https://github.com/YunoHost/yunohost/pull/246
# source .hfunctions
# TODO: remove with fix of https://github.com/YunoHost/yunohost/pull/246
install_dependencies() {
apt-get install --quiet --yes python-msgpack python-gevent
}
is_app_restorable() {
local -r domain=$1
local -r path=$2
local -r deploy_path=$3
ynh_webpath_available $domain $path \
|| ynh_die "Path not available: ${domain}${path}"
test ! -d $deploy_path \
|| ynh_die "There is already a directory: $deploy_path"
}
main() {
ynh_abort_if_errors
local app=$YNH_APP_INSTANCE_NAME
local domain=$(ynh_app_setting_get $app domain)
local path=$(ynh_app_setting_get $app path)
local deploy_path=$(ynh_app_setting_get $app deploy_path)
local symlink_to_deploy_path=$(ynh_app_setting_get $app symlink_to_deploy_path)
local nginx_config_file=$( ynh_app_setting_get $app nginx_config_file )
local systemd_service_name=$( ynh_app_setting_get $app systemd_service_name )
local systemd_service_file=$( ynh_app_setting_get $app systemd_service_file )
local user=$( ynh_app_setting_get $app user )
local user_zeronet_dir=$( ynh_app_setting_get $app user_zeronet_dir )
local url=$(ynh_app_setting_get $app url)
is_app_restorable $domain $path $deploy_path
install_dependencies
cp -a "./sources" $deploy_path
ln --symbolic --force $deploy_path $symlink_to_deploy_path
chown $user: -LR $symlink_to_deploy_path
chown $user: -h $symlink_to_deploy_path
ynh_secure_remove $user_zeronet_dir
cp -aR "./conf/.zeronet" $user_zeronet_dir
chown -R $user: $user_zeronet_dir
cp -a "./conf/nginx.conf" $nginx_config_file
service nginx reload
cp -a "./conf/${systemd_service_name}" $systemd_service_file
systemctl restart $systemd_service_name
}
main