diff --git a/data/helpers.d/filesystem b/data/helpers.d/filesystem index 6836aeebe..d8e7dc4c7 100644 --- a/data/helpers.d/filesystem +++ b/data/helpers.d/filesystem @@ -46,7 +46,15 @@ ynh_backup() { local SRC_PATH="$1" local DEST_PATH="${2:-}" local IS_BIG="${3:-0}" + BACKUP_CORE_ONLY=${BACKUP_CORE_ONLY:-0} + # If backing up core only (used by ynh_backup_before_upgrade), + # don't backup big data items + if [ "$IS_BIG" == "1" ] && [ "$BACKUP_CORE_ONLY" == "1" ] ; then + echo "$SRC_PATH will not be saved, because backup_core_only is set." >&2 + return 0 + fi + # ============================================================================== # Format correctly source and destination paths # ============================================================================== diff --git a/data/helpers.d/utils b/data/helpers.d/utils index 288ac393c..cc057eb0b 100644 --- a/data/helpers.d/utils +++ b/data/helpers.d/utils @@ -77,7 +77,7 @@ ynh_backup_before_upgrade () { fi # Create backup - sudo yunohost backup create --ignore-system --apps $app --name $app_bck-pre-upgrade$backup_number --verbose + sudo BACKUP_CORE_ONLY=1 yunohost backup create --ignore-system --apps $app --name $app_bck-pre-upgrade$backup_number --verbose if [ "$?" -eq 0 ] then # If the backup succeeded, remove the previous backup