Yedidyah Bar David has uploaded a new change for review.

Change subject: packaging: setup: only ask remote db password once
......................................................................

packaging: setup: only ask remote db password once

Change-Id: Ice74b0179c98071732445b52828f8c4bf9ade17b
Bug-Url: https://bugzilla.redhat.com/1040943
Signed-off-by: Yedidyah Bar David <d...@redhat.com>
---
M packaging/common_utils.py
M packaging/ovirt-engine-reports-setup.py
2 files changed, 30 insertions(+), 33 deletions(-)


  git pull ssh://gerrit.ovirt.org:29418/ovirt-reports refs/changes/71/23271/1

diff --git a/packaging/common_utils.py b/packaging/common_utils.py
index cb13fa3..85b8214 100755
--- a/packaging/common_utils.py
+++ b/packaging/common_utils.py
@@ -430,17 +430,22 @@
     to answer "yes/no" to a given question
     '''
     message = StringIO()
+    ask_string = question
     if yesNo:
         options = '(yes|no)'
-    ask_string = "{question} {options}: ".format(
-        question=question,
-        options=options,
-    )
+    if options:
+        ask_string = "{ask_string} {options}".format(
+            ask_string=ask_string,
+            options=options,
+        )
     if default is not '':
         ask_string = '{ask_string} [{default}] '.format(
             ask_string=ask_string,
             default=default,
         )
+    ask_string = '{ask_string}: '.format(
+        ask_string=ask_string,
+    )
     logging.debug("asking user: %s" % ask_string)
     message.write(ask_string)
     message.seek(0)
diff --git a/packaging/ovirt-engine-reports-setup.py 
b/packaging/ovirt-engine-reports-setup.py
index 77ec763..3ea2751 100755
--- a/packaging/ovirt-engine-reports-setup.py
+++ b/packaging/ovirt-engine-reports-setup.py
@@ -416,8 +416,6 @@
     return exists, owned, hasData, working_db_dict
 
 def getDbCredentials(
-    hostdefault='',
-    portdefault='',
     userdefault='',
 ):
     """
@@ -434,20 +432,15 @@
     ) % JRS_DB_NAME
 
     dbuser = utils.askQuestion(
-        question='Provide a remote DB user',
+        question='Database user',
         default=userdefault,
     )
 
-    userInput = getPassFromUser(
-        'Please choose a password for the db user: '
+    dbpass = getPassFromUser(
+        prompt='Database password: ',
+        validate=False,
     )
-    # We do not need verification for the re-entered password
-    userInput2 = getpass.getpass("Re-type password: ")
-    if userInput != userInput2:
-            print "ERROR: passwords don't match"
-            return getDbCredentials(dbhost, dbport, dbuser)
-
-    return dbuser, userInput
+    return dbuser, dbpass
 
 def getAdminPass():
 
@@ -455,30 +448,29 @@
         'Please choose a password for the reports admin user(s) '
         '(ovirt-admin): '
     )
-    # We do not need verification for the re-entered password
-    userInput2 = getPassFromUser(
-        'Retype password: '
-    )
-    if userInput != userInput2:
-            print "ERROR: passwords don't match"
-            return getAdminPass()
-
     return userInput
 
 
-def getPassFromUser(string):
+def getPassFromUser(prompt, validate=True):
     """
     get a single password from the user
     """
-    userInput = getpass.getpass(string)
-    if type(userInput) != types.StringType or len(userInput) == 0:
-        print "Cannot accept an empty password"
-        return getPassFromUser(string)
+    userInput = getpass.getpass(prompt)
 
-    try:
-        cracklib.FascistCheck(userInput)
-    except:
-        print "Warning: Weak Password."
+    if validate:
+        if type(userInput) != types.StringType or len(userInput) == 0:
+            print "Cannot accept an empty password"
+            return getPassFromUser(prompt)
+
+        try:
+            cracklib.FascistCheck(userInput)
+        except:
+            print "Warning: Weak Password."
+
+        userInput2 = getpass.getpass('Re-type password: ')
+        if userInput != userInput2:
+                print "ERROR: passwords don't match"
+                return getPassFromUser(prompt)
 
     return userInput
 


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

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ice74b0179c98071732445b52828f8c4bf9ade17b
Gerrit-PatchSet: 1
Gerrit-Project: ovirt-reports
Gerrit-Branch: master
Gerrit-Owner: Yedidyah Bar David <d...@redhat.com>
_______________________________________________
Engine-patches mailing list
Engine-patches@ovirt.org
http://lists.ovirt.org/mailman/listinfo/engine-patches

Reply via email to