From 18e4abba1d3a88295ffda1e8e700648b09797c52 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?F=C3=A9lix=20Pi=C3=A9dallu?= <felix@piedallu.me>
Date: Thu, 11 Jan 2024 00:17:14 +0100
Subject: [PATCH] On upgrade, pass --full_replace, --keep to ynh_setup_source,
 with the according doc.

---
 scripts/upgrade | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/scripts/upgrade b/scripts/upgrade
index 1cfde47..545387e 100755
--- a/scripts/upgrade
+++ b/scripts/upgrade
@@ -69,8 +69,13 @@ ynh_systemd_action --service_name="$app" --action="stop" --log_path="/var/log/$a
 if [ "$upgrade_type" == "UPGRADE_APP" ]; then
     ynh_script_progression --message="Upgrading source files..." --weight=1
 
+    ### ynh_setup_source can wipe the destination dir if called with --full_replace.
+    ### On upgrade, that is certainly what you want, to remove any old source file that
+    ### does not exist in the new version of the software.
+    ### You can list with --keep every file/directory to *not* wipe or overwrite,
+    ### useful for configuration files, data directories, or plugins.
     # Download, check integrity, uncompress and patch the source from manifest.toml
-    ynh_setup_source --dest_dir="$install_dir"
+    ynh_setup_source --dest_dir="$install_dir" --full_replace=1 --keep=".env data"
 fi
 
 ### $install_dir will automatically be initialized with some decent