#!/bin/bash # Note: each files and directories you've saved using the ynh_backup helper # will be located in the current directory, regarding the last argument. # Exit on command errors and treat unset variables as an error set -eu app=$YNH_APP_INSTANCE_NAME # Source YunoHost helpers source /usr/share/yunohost/helpers # Retrieve old app settings domain=$(ynh_app_setting_get "$app" domain) path=$(ynh_app_setting_get "$app" path) # Check domain/path availability sudo yunohost app checkurl "${domain}${path}" -a "$app" \ || ynh_die "Path not available: ${domain}${path}" # Restore sources & data src_path="/var/www/${app}" sudo cp -a ./sources "$src_path" # Restore permissions to app files # you may need to make some file and/or directory writeable by www-data (nginx user) sudo chown -R root: "$src_path" # Copy the data directory DATADIR="/home/yunohost.app/${app}" sudo mkdir -p "$DATADIR" sudo cp -a ./data/. "$DATADIR" # Fix permissions sudo chown -R www-data:www-data $src_path sudo chown -R www-data:www-data $DATADIR sudo chmod 777 $src_path/_data sudo chmod 777 $src_path/upload sudo chmod 755 -R $src_path/galleries # Create and restore the database dbname=$app dbuser=$app dbpass=$(ynh_app_setting_get "$app" mysqlpwd) ynh_mysql_create_db "$dbname" "$dbuser" "$dbpass" ynh_mysql_connect_as "$dbuser" "$dbpass" "$dbname" < ./dump.sql # Restore NGINX configuration sudo cp -a ./nginx.conf "/etc/nginx/conf.d/${domain}.d/${app}.conf" # Restart webserver sudo service nginx reload