#!/bin/bash #================================================= # GENERIC STARTING #================================================= # IMPORT GENERIC HELPERS #================================================= source /usr/share/yunohost/helpers source _common.sh #================================================= # LOAD SETTINGS #================================================= export app=$YNH_APP_INSTANCE_NAME export domain=$(ynh_app_setting_get $app domain) export path_url=$(ynh_app_setting_get $app path) export admin=$(ynh_app_setting_get $app admin) export final_path=$(ynh_app_setting_get $app final_path) export is_public=$(ynh_app_setting_get $app is_public) export prefix=$(ynh_app_setting_get $app prefix) export db_pwd=$(ynh_app_setting_get $app mysqlpwd) export db_name=$(ynh_app_setting_get $app db_name) export db_user=$(ynh_app_setting_get $app db_user) #================================================= # CHECK VERSION #================================================= ynh_abort_if_up_to_date #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= # Backup the current version of the app ynh_backup_before_upgrade ynh_clean_setup () { # restore it if the upgrade fails ynh_restore_upgradebackup } # Exit if an error occurs during the execution of the script ynh_abort_if_errors #================================================= # CHECK THE PATH #================================================= path_url=$(ynh_normalize_url_path $path_url) # Vérifie et corrige la syntaxe du path. #================================================= # STEP Migrations #================================================= if ynh_version_le "2.0.5" ; then is_public=${is_public:-0} prefix=${prefix:-prefix_} db_name=${db_name:-$app} final_path=$(ynh_app_setting_get $app local_path) ynh_save_args path_url is_public prefix db_name final_path db_user ynh_install_app_dependencies $pkg_dependencies # Move the upload dir to final_path if needed # The upload dir can't be symlinked in home (not supported by LS) upload_path=/home/yunohost.app/$app/upload if [ -h $final_path/upload ]; then rm $final_path/upload mv $upload_path $final_path/ fi ynh_app_setting_delete $app skipped_uris ynh_sso_access "/index.php?r=admin,/index.php?r=plugins,/scripts" ynh_configure migrations/2.0.5.sql ./2.0.5.sql mysql -u $app -p$db_pwd $db_name < ./2.0.5.sql fi #================================================= # STANDARD UPGRADE STEPS #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= # Backup config, plugins and themes and delete previous files ynh_save_persistent modules themes plugins ynh_save_persistent data application/config/config.php upload # Copie new files and restore config, plugins, upload and themes ynh_secure_remove $final_path ynh_setup_source "$final_path" # Télécharge la source, décompresse et copie dans $final_path # Restore config, plugins and themes ynh_restore_persistent modules ynh_restore_persistent data #================================================= # NGINX CONFIGURATION #================================================= ynh_add_nginx_config #================================================= # CREATE DEDICATED USER #================================================= ynh_system_user_create $app # Create the dedicated user, if not exist #================================================= # PHP-FPM CONFIGURATION #================================================= ynh_add_fpm_config # Créer le fichier de configuration du pool php-fpm et le configure. #================================================= # SECURING FILES AND DIRECTORIES #================================================= set_permissions #================================================= # UPGRADE DB #================================================= # Migrate DB cd $final_path/application/commands ynh_exec_as "$app" php console.php update #================================================= # RELOAD NGINX #================================================= ynh_system_reload nginx