Simone Tiraboschi has uploaded a new change for review.

Change subject: pacaking: setup: fixing iptables review dialog
......................................................................

pacaking: setup: fixing iptables review dialog

Writing the will to review iptables changes into answer file,
fixing a bug

Change-Id: I8f16a90a074052226882d76fc80918ed276d379c
Bug-url: https://bugzilla.redhat.com/1109326
Signed-off-by: Simone Tiraboschi <[email protected]>
---
M packaging/setup/ovirt_engine_setup/constants.py
M 
packaging/setup/plugins/ovirt-engine-common/base/network/firewall_manager_iptables.py
M packaging/setup/plugins/ovirt-engine-setup/base/network/firewall_manager.py
3 files changed, 62 insertions(+), 32 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/67/33467/1

diff --git a/packaging/setup/ovirt_engine_setup/constants.py 
b/packaging/setup/ovirt_engine_setup/constants.py
index dd3b5fa..70836f9 100644
--- a/packaging/setup/ovirt_engine_setup/constants.py
+++ b/packaging/setup/ovirt_engine_setup/constants.py
@@ -387,7 +387,14 @@
         return 'OVESETUP_CONFIG/updateFirewall'
 
     FIREWALL_MANAGERS = 'OVESETUP_CONFIG/firewallManagers'
-    SKIP_FIREWALL_REVIEW = 'OVESETUP_CONFIG/skipFirewallReview'
+
+    @osetupattrs(
+        answerfile=True,
+        summary=False,
+    )
+    def FIREWALL_CHANGES_REVIEW(self):
+        return 'OVESETUP_CONFIG/firewallChangesReview'
+
     VALID_FIREWALL_MANAGERS = 'OVESETUP_CONFIG/validFirewallManagers'
     FQDN_REVERSE_VALIDATION = 'OVESETUP_CONFIG/fqdnReverseValidation'
     FQDN_NON_LOOPBACK_VALIDATION = 'OVESETUP_CONFIG/fqdnNonLoopback'
diff --git 
a/packaging/setup/plugins/ovirt-engine-common/base/network/firewall_manager_iptables.py
 
b/packaging/setup/plugins/ovirt-engine-common/base/network/firewall_manager_iptables.py
index 22cb72e..6fb9f6d 100644
--- 
a/packaging/setup/plugins/ovirt-engine-common/base/network/firewall_manager_iptables.py
+++ 
b/packaging/setup/plugins/ovirt-engine-common/base/network/firewall_manager_iptables.py
@@ -140,32 +140,54 @@
                 )
                 diffl = ''.join(diff)
             if len(diffl) > 0:
-                confirmed = dialog.queryBoolean(
-                    dialog=self.plugin.dialog,
-                    name='OVESETUP_CONFIRM_IPTABLES_CHANGES',
-                    note=_(
-                        'Generated iptables rules are different '
-                        'from current ones.\n'
-                        'Please review the changes:\n\n'
-                        '{diff}\n\n'
-                        'Do you want to proceed with firewall configuration? '
-                        '(@VALUES@) [@DEFAULT@]: '
-                    ).format(
-                        diff=diffl
-                    ),
-                    prompt=True,
-                    true=_('Yes'),
-                    false=_('No'),
-                    default=True,
-                )
-                if not confirmed:
-                    raise RuntimeError(
-                        _(
-                            'iptables proposed configuration '
-                            'was rejected by user'
-                        )
+                if self.environment[
+                    osetupcons.ConfigEnv.FIREWALL_CHANGES_REVIEW
+                ] is None:
+                    self.environment[
+                        osetupcons.ConfigEnv.FIREWALL_CHANGES_REVIEW
+                    ] = dialog.queryBoolean(
+                        dialog=self.plugin.dialog,
+                        name='OVESETUP_REVIEW_IPTABLES_CHANGES',
+                        note=_(
+                            'Generated iptables rules are different '
+                            'from current ones.\n'
+                            'Do you want to review them?'
+                            '(@VALUES@) [@DEFAULT@]: '
+                        ),
+                        prompt=True,
+                        true=_('Yes'),
+                        false=_('No'),
+                        default=False,
                     )
 
+                if self.environment[
+                    osetupcons.ConfigEnv.FIREWALL_CHANGES_REVIEW
+                ]:
+                    confirmed = dialog.queryBoolean(
+                        dialog=self.plugin.dialog,
+                        name='OVESETUP_CONFIRM_IPTABLES_CHANGES',
+                        note=_(
+                            'Please review the changes:\n\n'
+                            '{diff}\n\n'
+                            'Do you want to proceed with firewall '
+                            'configuration? '
+                            '(@VALUES@) [@DEFAULT@]: '
+                        ).format(
+                            diff=diffl
+                        ),
+                        prompt=True,
+                        true=_('Yes'),
+                        false=_('No'),
+                        default=True,
+                    )
+                    if not confirmed:
+                        raise RuntimeError(
+                            _(
+                                'iptables proposed configuration '
+                                'was rejected by user'
+                            )
+                        )
+
     @plugin.event(
         stage=plugin.Stages.STAGE_SETUP,
         before=(
diff --git 
a/packaging/setup/plugins/ovirt-engine-setup/base/network/firewall_manager.py 
b/packaging/setup/plugins/ovirt-engine-setup/base/network/firewall_manager.py
index 64e525e..9990ff1 100644
--- 
a/packaging/setup/plugins/ovirt-engine-setup/base/network/firewall_manager.py
+++ 
b/packaging/setup/plugins/ovirt-engine-setup/base/network/firewall_manager.py
@@ -57,8 +57,8 @@
             None
         )
         self.environment.setdefault(
-            osetupcons.ConfigEnv.SKIP_FIREWALL_REVIEW,
-            False
+            osetupcons.ConfigEnv.FIREWALL_CHANGES_REVIEW,
+            None
         )
         self.environment.setdefault(
             osetupcons.ConfigEnv.VALID_FIREWALL_MANAGERS,
@@ -238,13 +238,14 @@
         ),
     )
     def _review_config(self):
-        if not self.environment[
-            osetupcons.ConfigEnv.SKIP_FIREWALL_REVIEW
-        ]:
-            manager = self.environment[
+        next(
+            m for m in self.environment[
+                osetupcons.ConfigEnv.FIREWALL_MANAGERS
+            ]
+            if m.name == self.environment[
                 osetupcons.ConfigEnv.FIREWALL_MANAGER
             ]
-            manager.review_config()
+        ).review_config()
 
     @plugin.event(
         stage=plugin.Stages.STAGE_MISC,


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

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

Reply via email to