diff --git a/scripts/backup b/scripts/backup index 3e51850..d117fef 100755 --- a/scripts/backup +++ b/scripts/backup @@ -1,7 +1,5 @@ #!/bin/bash -#================================================= -# GENERIC START #================================================= # IMPORT GENERIC HELPERS #================================================= @@ -22,24 +20,20 @@ ynh_print_info --message="Declaring files to be backed up..." ynh_backup --src_path="$install_dir" #================================================= -# BACKUP THE NGINX CONFIGURATION +# BACKUP THE SYSTEM CONFIGURATION #================================================= ynh_backup --src_path="/etc/nginx/conf.d/$domain.d/$app.conf" -#================================================= -# BACKUP THE PHP-FPM CONFIGURATION -#================================================= - ynh_backup --src_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" +ynh_backup --src_path="/etc/logrotate.d/$app" + #================================================= -# SPECIFIC BACKUP -#================================================= -# BACKUP LOGROTATE +# BACKUP VARIOUS FILES #================================================= -ynh_backup --src_path="/etc/logrotate.d/$app" +ynh_backup --src_path="/var/log/$app/" #================================================= # BACKUP THE MYSQL DATABASE diff --git a/scripts/change_url b/scripts/change_url index b50f43a..829df58 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -1,7 +1,5 @@ #!/bin/bash -#================================================= -# GENERIC STARTING #================================================= # IMPORT GENERIC HELPERS #================================================= @@ -9,8 +7,6 @@ source _common.sh source /usr/share/yunohost/helpers -#================================================= -# STANDARD MODIFICATIONS #================================================= # MODIFY URL IN NGINX CONF #================================================= @@ -18,8 +14,6 @@ ynh_script_progression --message="Updating NGINX web server configuration..." -- ynh_change_url_nginx_config -#================================================= -# SPECIFIC MODIFICATIONS #================================================= # UPDATE conf file #================================================= diff --git a/scripts/install b/scripts/install index ed4a2ef..f10016d 100644 --- a/scripts/install +++ b/scripts/install @@ -1,7 +1,5 @@ #!/bin/bash -#================================================= -# GENERIC START #================================================= # IMPORT GENERIC HELPERS #================================================= @@ -22,15 +20,15 @@ fpm_usage="medium" #================================================= ynh_script_progression --message="Storing installation settings..." --weight=2 -ynh_app_setting_set --app=$app --key=member --value=$member -ynh_app_setting_set --app=$app --key=version --value=$(ynh_app_upstream_version "../manifest.json") -ynh_app_setting_set --app=$app --key=fpm_footprint --value=$fpm_footprint -ynh_app_setting_set --app=$app --key=fpm_usage --value=$fpm_usage +ynh_app_setting_set --app="$app" --key="member" --value="$member" +ynh_app_setting_set --app="$app" --key="version" --value="$(ynh_app_upstream_version)" +ynh_app_setting_set --app="$app" --key="fpm_footprint" --value="$fpm_footprint" +ynh_app_setting_set --app="$app" --key="fpm_usage" --value="$fpm_usage" #================================================= # CREATE A MYSQL DATABASE #================================================= -ynh_script_progression --message="Creating a MySQL database..." --weight=1 +ynh_script_progression --message="Configuring $app's MySQL database..." --weight=1 ynh_mysql_execute_as_root --sql="ALTER DATABASE $db_name charset=utf8" @@ -56,9 +54,19 @@ ynh_script_progression --message="Download source files..." --weight=10 ynh_setup_source --dest_dir="$install_dir" #================================================= -# PHP-FPM CONFIGURATION +# PREPARE AND INSTALL APP #================================================= -ynh_script_progression --message="Configuring PHP-FPM" --weight=2 +ynh_script_progression --message="Adding a configuration file..." --weight=1 + +ynh_add_config --template="conf.php" --destination="$install_dir/htdocs/conf/conf.php" + +chmod 644 "$install_dir/htdocs/conf/conf.php" +chown "$app:$app" "$install_dir/htdocs/conf/conf.php" + +#================================================= +# SYSTEM CONFIGURATION +#================================================= +ynh_script_progression --message="Adding system configurations related to $app..." --weight=1 # Create a dedicated php-fpm config ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint @@ -66,23 +74,6 @@ ynh_add_fpm_config --usage=$fpm_usage --footprint=$fpm_footprint # Create a dedicated nginx config ynh_add_nginx_config -#================================================= -# SPECIFIC SETUP -#================================================= -# PREPARE AND INSTALL APP -#================================================= -ynh_script_progression --message="Adding a configuration file..." --weight=1 - -ynh_add_config --template="../conf/conf.php" --destination="$install_dir/htdocs/conf/conf.php" - -chmod 644 "$install_dir/htdocs/conf/conf.php" -chown $app:$app "$install_dir/htdocs/conf/conf.php" - -#================================================= -# SETUP LOGROTATE -#================================================= -ynh_script_progression --message="Configuring log rotation..." --weight=1 - # Use logrotate to manage application logfile(s) ynh_use_logrotate --logfile="$install_dir/documents/dolibarr.log" diff --git a/scripts/remove b/scripts/remove index d9d14ec..1a73be4 100644 --- a/scripts/remove +++ b/scripts/remove @@ -1,7 +1,5 @@ #!/bin/bash -#================================================= -# GENERIC START #================================================= # IMPORT GENERIC HELPERS #================================================= diff --git a/scripts/restore b/scripts/restore index ff1dc17..f083b6e 100755 --- a/scripts/restore +++ b/scripts/restore @@ -1,7 +1,5 @@ #!/bin/bash -#================================================= -# GENERIC START #================================================= # IMPORT GENERIC HELPERS #================================================= @@ -26,20 +24,19 @@ ynh_script_progression --message="Restoring the data directory..." --weight=1 ynh_restore_file --origin_path="$data_dir" --not_mandatory -# (Same as for install dir) -chown -R $app:www-data "$data_dir" +chown -R "$app:www-data" "$data_dir" #================================================= # RESTORE THE MYSQL DATABASE #================================================= ynh_script_progression --message="Restoring the MySQL database..." --weight=27 -ynh_mysql_connect_as --user=$db_user --password=$db_pwd --database=$db_name < ./db.sql +ynh_mysql_connect_as --user="$db_user" --password="$db_pwd" --database="$db_name" < ./db.sql #================================================= -# RESTORE THE PHP-FPM CONFIGURATION +# RESTORE SYSTEM CONFIGURATIONS #================================================= -ynh_print_info --message="Reconfiguring PHP-FPM..." +ynh_script_progression --message="Restoring system configurations related to $app..." --weight=1 # Restore the file first, so it can have a backup if different ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" @@ -52,14 +49,18 @@ ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" ynh_restore_file --origin_path="/etc/logrotate.d/$app" #================================================= -# GENERIC FINALIZATION +# RESTORE VARIOUS FILES +#================================================= + +ynh_restore_file --origin_path="/var/log/$app/" + #================================================= # RELOAD NGINX AND PHP-FPM #================================================= ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --weight=1 ynh_systemd_action --service_name=nginx --action=reload -ynh_systemd_action --service_name=php$phpversion-fpm --action=reload +ynh_systemd_action --service_name="php$phpversion-fpm" --action=reload #================================================= # END OF SCRIPT diff --git a/scripts/upgrade b/scripts/upgrade index 443b2a0..1c8089e 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -1,7 +1,5 @@ #!/bin/bash -#================================================= -# GENERIC START #================================================= # IMPORT GENERIC HELPERS #================================================= @@ -71,7 +69,7 @@ then # While the current version is not the last version, do an upgrade while [ "$last_version" != "$current_version" ] do - + # The major version is the first part of the version number current_major_version=${current_version%%.*} @@ -80,7 +78,7 @@ then else source upgrade.d/upgrade.$current_major_version.sh fi - + # If the current version has the same major version than the next one, # then it's the last upgrade to do # We also cover the case where the last version is the first of the current major version series @@ -88,12 +86,12 @@ then if [[ ("$last_major_version" -eq "$current_major_version") || ( ("$last_major_version" -eq "$((current_major_version+1))") && ("$next_version" == "$last_version") ) ]]; then current_major_version=last fi - + # Load the value for this version source upgrade.d/upgrade.$current_major_version.sh ynh_print_info --message="Upgrading app from $current_version to $next_version" - + # Create an app.src for this version of Dolibarr cat > ../conf/app.src << EOF SOURCE_URL=https://github.com/Dolibarr/dolibarr/archive/$next_version.tar.gz @@ -103,7 +101,7 @@ SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true EOF - + # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$install_dir" @@ -115,30 +113,30 @@ EOF then ynh_secure_remove $lock fi - + mkdir -p /var/log/$app/ - + # Upgrade with CURL - + charset=$(mysql -ss -N -e "SELECT default_character_set_name FROM information_schema.SCHEMATA WHERE schema_name = '$db_name'") if [ "$charset" != "utf8" ] then ynh_print_info --message="Changing Database charset to utf8" - + ynh_mysql_execute_as_root --database=$db_name --sql="ALTER DATABASE $db_name charset=utf8" - + ynh_local_curl "/install/repair.php" \ "force_utf8_on_tables=confirmed" > /var/log/$app/repair.html fi ynh_exec_fully_quiet sleep 5 - + # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$install_dir" - + pushd $install_dir/htdocs/install/ - + if php$phpversion upgrade.php $current_version $next_version > /var/log/$app/upgrade.html; then ynh_print_info --message="Step 1 upgrading ended successfully" else @@ -161,20 +159,20 @@ EOF ynh_die --message="Step 3 upgrading ended with error" fi popd - - + + # Get the new current version number current_version=$next_version current_major_version=${current_version%%.*} - + done - + if php$phpversion $install_dir/scripts/user/sync_users_ldap2dolibarr.php commitiferror --server=localhost -y; then ynh_print_info --message="LDAP user update ok" else ynh_print_info --message="LDAP user update ended with error" fi - + ynh_app_setting_set --app=$app --key=version --value=$update_version fi