diff --git a/scripts/upgrade b/scripts/upgrade index 56b7d19..979630f 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -188,10 +188,22 @@ if [ "$upgrade_type" == "UPGRADE_APP" ] then ynh_script_progression --message="Upgrading source files..." --weight=4 + # Create a temporary directory + tmpdir="$(mktemp -d)" + # Backup the config file in the temp dir + cp -a "$final_path/settings.json" "$tmpdir/settings.json" + ynh_secure_remove --file="$final_path" # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$final_path" + + # Copy the admin saved settings from tmp directory to final config path + cp -a "$tmpdir/settings.json" "$final_path/settings.json" + + # Remove the tmp directory securely + ynh_secure_remove --file="$tmpdir" + fi #=================================================