#!/bin/bash source _common.sh source /usr/share/yunohost/helpers #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= ynh_script_progression "Backing up the app before changing its URL (may take a while)..." # Backup the current version of the app ynh_clean_setup () { # Remove the new domain config file, the remove script won't do it as it doesn't know yet its location. ynh_safe_rm "/etc/nginx/conf.d/$new_domain.d/$app.conf" ynh_safe_rm "/etc/nginx/conf.d/$new_domain.d/$app.d" # restore it if the upgrade fails #REMOVEME? ynh_restore_upgradebackup } #================================================= # ACTIVATE MAINTENANCE MODE #================================================= path_url=$old_path domain=$old_domain ynh_maintenance_mode_ON #================================================= # MODIFY URL IN NGINX CONF #================================================= ynh_script_progression "Updating NGINX web server configuration..." nginx_conf_path=/etc/nginx/conf.d/$old_domain.d/$app.conf nginx_extra_conf_dir=/etc/nginx/conf.d/$old_domain.d/$app.d # Change the path in the NGINX config file if [ $change_path -eq 1 ] ynh_print_info "Change the path in the Nginx config file" then # Make a backup of the original NGINX config file if modified ynh_backup_if_checksum_is_different "$nginx_conf_path" # Set global variables for NGINX helper domain="$old_domain" path_url="$new_path" # Update custom error file path if needed if [ $custom_error_file -eq 1 ] then ynh_config_add --template="nginx-code-error.conf" --destination="$nginx_extra_conf_dir/error-code.conf" fi # Create a dedicated NGINX configssh ynh_config_add_nginx fi # Change the domain for NGINX if [ $change_domain -eq 1 ] then # Delete file checksum for the old conf file location ynh_delete_file_checksum "$nginx_conf_path" ynh_delete_file_checksum "$nginx_extra_conf_dir/php.conf" #ynh_delete_file_checksum "$nginx_extra_conf_dir/nginx-code-error.conf" path_url="$new_path" domain="$old_domain" ynh_config_remove_nginx domain="$new_domain" ynh_config_add_nginx mv $nginx_extra_conf_dir /etc/nginx/conf.d/$new_domain.d/$app.d # Store file checksum for the new config file location ynh_store_file_checksum "/etc/nginx/conf.d/$new_domain.d/$app.d/php.conf" #ynh_store_file_checksum "/etc/nginx/conf.d/$new_domain.d/$app.d/nginx-code-error.conf" fi #================================================= # DEACTIVE MAINTENANCE MODE #================================================= path_url=$old_path domain=$old_domain ynh_maintenance_mode_OFF #================================================= # END OF SCRIPT #================================================= ynh_script_progression "Change of URL completed for $app"