[PATCH] Don't prompt when in cmdline mode (#869685)

Brian C. Lane bcl at redhat.com
Mon Oct 29 23:10:28 UTC 2012


On Mon, Oct 29, 2012 at 03:59:58PM -0700, Jesse Keating wrote:
> On 10/26/2012 01:41 AM, Vratislav Podzimek wrote:
> >On Thu, 2012-10-25 at 22:43 -0700, Jesse Keating wrote:
> >>cmdline mode is text mode only, so that's why this patch only touches
> >>the tui code.
> >>---
> >>  pyanaconda/ui/tui/__init__.py | 4 ++++
> >>  1 file changed, 4 insertions(+)
> >>
> >>diff --git a/pyanaconda/ui/tui/__init__.py b/pyanaconda/ui/tui/__init__.py
> >>index 9f34c4a..56791ba 100644
> >>--- a/pyanaconda/ui/tui/__init__.py
> >>+++ b/pyanaconda/ui/tui/__init__.py
> >>@@ -21,6 +21,7 @@
> >>
> >>  from pyanaconda import ui
> >>  from pyanaconda.ui import common
> >>+from pyanaconda.flags import flags
> >>  import simpleline as tui
> >>  from hubs.summary import SummaryHub
> >>  from hubs.progress import ProgressHub
> >>@@ -183,6 +184,9 @@ class TextUserInterface(ui.UserInterface):
> >>             times where anaconda cannot make a reasonable decision.  We don't
> >>             want to overwhelm the user with choices.
> >>          """
> >>+        if flags.automatedInstall and not flags.ksprompt:
> >>+            # If we're in cmdline mode, just say no.
> >>+            return False
> >>          question_window = YesNoDialog(self._app, message)
> >>          self._app.switch_screen_modal(question_window)
> >>          return question_window.answer
> >Do we really want to just say no in every case this code is used in
> >cmdline mode? It looks to me as a potential source of more bugs. I'm
> >afraid callers should take care of the check and not call
> >showYesNoQuestion in case it cannot be answered (helper function for
> >this can be easily created). Or maybe adding a 'default_answer'
> >parameter defaulting to False that will be returned in case the answer
> >cannot be obtained from the user? This would, however, need a change in
> >the UserInteraface and GraphicalUserInterface too.
> >
> 
> Right now this code (the showYesNoQuestion) only appears to be used
> by errors.py to handle a variety of error states.  In all cases it
> appears to be that if we get a false from the question we raise the
> error.
> 
> I could go through each caller of showYesNoQuestion and skip the
> code path if flags.automatedInstall and not flags.ksprompt, but that
> would be adding more code.
> 
> I'm open to either that or leaving it as it is with the assumption
> that a negative answer is just erroring out the install.

Putting the check inside the method is better than wrapping every single
call to it. Maybe add a note to the docstring that describes the
behavior.

-- 
Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 482 bytes
Desc: not available
URL: <https://lists.fedorahosted.org/pipermail/anaconda-patches/attachments/20121029/e102864c/attachment.sig>


More information about the anaconda-patches mailing list