Adds tty password entry for glanceclient
Added functionality from keystoneclient to fallback to the tty for password entry if no password is given via the environment or the --os-password option. Change-Id: I096e81b61d7f499cbda300abdc14430928d18491 Closes-Bug: 1357549
This commit is contained in:
+16
-4
@@ -21,6 +21,7 @@ from __future__ import print_function
|
||||
|
||||
import argparse
|
||||
import copy
|
||||
import getpass
|
||||
import json
|
||||
import logging
|
||||
import os
|
||||
@@ -439,10 +440,21 @@ class OpenStackImagesShell(object):
|
||||
"env[OS_USERNAME]"))
|
||||
|
||||
if not args.os_password:
|
||||
raise exc.CommandError(
|
||||
_("You must provide a password via"
|
||||
" either --os-password or "
|
||||
"env[OS_PASSWORD]"))
|
||||
# No password, If we've got a tty, try prompting for it
|
||||
if hasattr(sys.stdin, 'isatty') and sys.stdin.isatty():
|
||||
# Check for Ctl-D
|
||||
try:
|
||||
args.os_password = getpass.getpass('OS Password: ')
|
||||
except EOFError:
|
||||
pass
|
||||
# No password because we didn't have a tty or the
|
||||
# user Ctl-D when prompted.
|
||||
if not args.os_password:
|
||||
raise exc.CommandError(
|
||||
_("You must provide a password via "
|
||||
"either --os-password, "
|
||||
"env[OS_PASSWORD], "
|
||||
"or prompted response"))
|
||||
|
||||
# Validate password flow auth
|
||||
project_info = (args.os_tenant_name or
|
||||
|
||||
Reference in New Issue
Block a user