From 5f4581042c16c0eb3144abd795660f0ad187ce56 Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Sat, 11 Nov 2023 13:23:35 +0100 Subject: [PATCH] Don't remove add-on conifg on add-on removal (#4696) --- supervisor/addons/addon.py | 4 ---- tests/backups/test_manager.py | 6 +++++- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/supervisor/addons/addon.py b/supervisor/addons/addon.py index ebf39af47..0f55f5382 100644 --- a/supervisor/addons/addon.py +++ b/supervisor/addons/addon.py @@ -602,10 +602,6 @@ class Addon(AddonModel): _LOGGER.info("Removing add-on data folder %s", self.path_data) await remove_data(self.path_data) - if self.path_config.is_dir(): - _LOGGER.info("Removing add-on config folder %s", self.path_config) - await remove_data(self.path_config) - @Job( name="addon_install", limit=JobExecutionLimit.GROUP_ONCE, diff --git a/tests/backups/test_manager.py b/tests/backups/test_manager.py index 6dd6d0dd1..050787d9d 100644 --- a/tests/backups/test_manager.py +++ b/tests/backups/test_manager.py @@ -1420,9 +1420,12 @@ async def test_restore_preserves_data_config( (test_config := install_addon_example.path_config / "config.yaml").touch() backup: Backup = await coresys.backups.do_backup_partial(addons=["local_example"]) + (test_config2 := install_addon_example.path_config / "config2.yaml").touch() + await coresys.addons.uninstall("local_example") assert not install_addon_example.path_data.exists() - assert not install_addon_example.path_config.exists() + assert install_addon_example.path_config.exists() + assert test_config2.exists() with patch.object(AddonModel, "_validate_availability"), patch.object( DockerAddon, "attach" @@ -1433,6 +1436,7 @@ async def test_restore_preserves_data_config( assert test_data.exists() assert test_config.exists() + assert not test_config2.exists() async def test_backup_to_mount_bypasses_free_space_condition(