From 77318806c2129d8cc43c1579f21189ad393a5fd0 Mon Sep 17 00:00:00 2001 From: nbenedek Date: Fri, 7 Apr 2023 03:18:52 +0200 Subject: [PATCH] sharing: Completely uninstall app Test: Functional tests passed Signed-off-by: nbenedek [sunil: Update docstrings, make uninstall fail-safe] Signed-off-by: Sunil Mohan Adapa Reviewed-by: Sunil Mohan Adapa --- plinth/modules/sharing/__init__.py | 5 +++++ plinth/modules/sharing/privileged.py | 6 ++++++ 2 files changed, 11 insertions(+) diff --git a/plinth/modules/sharing/__init__.py b/plinth/modules/sharing/__init__.py index 6a0c53e9e..68b062425 100644 --- a/plinth/modules/sharing/__init__.py +++ b/plinth/modules/sharing/__init__.py @@ -55,3 +55,8 @@ class SharingApp(app_module.App): super().setup(old_version) privileged.setup() self.enable() + + def uninstall(self): + """De-configure and uninstall the app.""" + super().uninstall() + privileged.uninstall() diff --git a/plinth/modules/sharing/privileged.py b/plinth/modules/sharing/privileged.py index bfc2745ec..683e6f2a4 100644 --- a/plinth/modules/sharing/privileged.py +++ b/plinth/modules/sharing/privileged.py @@ -173,3 +173,9 @@ def _list(aug=None): def list_shares() -> list[dict[str, object]]: """List all Apache configuration shares and print as JSON.""" return _list() + + +@privileged +def uninstall(): + """Remove apache config when app is uninstalled.""" + pathlib.Path(APACHE_CONFIGURATION).unlink(missing_ok=True)