seafile_ynh/scripts/restore
2017-12-10 10:45:51 +01:00

56 lines
1.5 KiB
Bash

#!/bin/bash
# Source YunoHost helpers
source /usr/share/yunohost/helpers
# Stop script if errors
ynh_abort_if_errors
# Import common cmd
source ../settings/scripts/_common.sh
# Retrieve arguments
domain=$(ynh_app_setting_get $app domain)
path=$(ynh_normalize_url_path $(ynh_app_setting_get $app path))
db_pwd=$(ynh_app_setting_get ${app} mysqlpwd)
# Check domain/path availability
ynh_webpath_available $domain $path || ynh_die "$domain/$path is not available, please use an other domain or path."
# Restore dependencies
install_dependance
# Restore all config and data
ynh_restore
# Get configuration for user and final path
get_configuration
# Create user if it need
[[ $seafile_user = "seafile" ]] && ynh_system_user_create $seafile_user $final_path
# Restore mysql dump
dbuser=seafile
ynh_mysql_create_db ccnetdb "$dbuser" "$db_pwd"
ynh_mysql_create_db seafiledb "$dbuser" "$db_pwd"
ynh_mysql_create_db seahubdb "$dbuser" "$db_pwd"
su -c "mysql -u ${app} -p$db_pwd ccnetdb < ${YNH_CWD}/ccnetdb.dmp"
su -c "mysql -u ${app} -p$db_pwd seafiledb < ${YNH_CWD}/seafiledb.dmp"
su -c "mysql -u ${app} -p$db_pwd seahubdb < ${YNH_CWD}/seahubdb.dmp"
# Restore sso persistent config
python $final_path/add_sso_conf.py
# Add logrotate
ynh_use_logrotate $final_path/logs
# Add Seafile to YunoHost's monitored services
yunohost service add seafile-server
# Reload nginx
systemctl reload nginx.service
# Enable service and start seafile
systemctl daemon-reload
update-rc.d seafile-server defaults
systemctl start seafile-server.service