Sandro Bonazzola has uploaded a new change for review.

Change subject: packaging: setup: fixed uninstall UX
......................................................................

packaging: setup: fixed uninstall UX

- avoid to create empty section in uninstall file
- avoid to ask more than one time about uninstalling a group

Change-Id: I95dddc2205a7e16dc4f4848fb6fdeab7b1e2ec2b
Signed-off-by: Sandro Bonazzola <[email protected]>
---
M packaging/setup/plugins/ovirt-engine-remove/files/simple.py
M packaging/setup/plugins/ovirt-engine-setup/core/uninstall.py
2 files changed, 22 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/16/15016/1

diff --git a/packaging/setup/plugins/ovirt-engine-remove/files/simple.py 
b/packaging/setup/plugins/ovirt-engine-remove/files/simple.py
index 16bd60c..67ff2f2 100644
--- a/packaging/setup/plugins/ovirt-engine-remove/files/simple.py
+++ b/packaging/setup/plugins/ovirt-engine-remove/files/simple.py
@@ -114,6 +114,7 @@
             osetupcons.CoreEnv.CONFIRM_UNINSTALL_GROUPS
         ]
         unremovable = {}
+        already_asked = []
         for info in self._infos:
             config = configparser.ConfigParser()
             config.optionxform = str
@@ -135,7 +136,11 @@
                         msg = description
                     self._descriptions[group] = msg
                     add_group = not config.getboolean(section, 'optional')
-                    if not add_group and interactive:
+                    if (
+                        not add_group and
+                        interactive and
+                        not group in already_asked
+                    ):
                         add_group = dialog.queryBoolean(
                             dialog=self.dialog,
                             name='OVESETUP_REMOVE_GROUP/' + group,
diff --git a/packaging/setup/plugins/ovirt-engine-setup/core/uninstall.py 
b/packaging/setup/plugins/ovirt-engine-setup/core/uninstall.py
index e393dbf..c803259 100644
--- a/packaging/setup/plugins/ovirt-engine-setup/core/uninstall.py
+++ b/packaging/setup/plugins/ovirt-engine-setup/core/uninstall.py
@@ -102,10 +102,14 @@
         config = configparser.ConfigParser()
         config.optionxform = str
 
+        def _addSection(section, description, optional, changes):
+            if changes and not config.has_section(section):
+                config.add_section(section)
+                config.set(section, 'description', description)
+                config.set(section, 'optional', optional)
+
         def _addFiles(section, files, description, optional):
-            config.add_section(section)
-            config.set(section, 'description', description)
-            config.set(section, 'optional', optional)
+            _addSection(section, description, optional, files)
             for index, name in enumerate(sorted(set(files))):
                 if os.path.exists(name):
                     prefix = 'file.{index:03}'.format(index=index)
@@ -193,6 +197,15 @@
                 osetupcons.CoreEnv.LINES_GROUP_PREFIX
             )
         ]:
+            group_config = self.environment[
+                osetupcons.CoreEnv.REGISTER_UNINSTALL_GROUPS
+            ].config[section]
+            _addSection(
+                osetupcons.Const.FILE_GROUP_SECTION_PREFIX + section,
+                group_config['description'],
+                group_config['optional'],
+                changes
+            )
             _addLines(
                 osetupcons.Const.FILE_GROUP_SECTION_PREFIX + section,
                 changes,


--
To view, visit http://gerrit.ovirt.org/15016
To unsubscribe, visit http://gerrit.ovirt.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I95dddc2205a7e16dc4f4848fb6fdeab7b1e2ec2b
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-engine
Gerrit-Branch: master
Gerrit-Owner: Sandro Bonazzola <[email protected]>
_______________________________________________
Engine-patches mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to