Blueprint cli-auth: common cli args
Remove os_ from internal variable names corresponding to OS_ env variables. Strip trailing '/' from --auth_url since server doesn't seem to tolerate '//' in the URL path. Fixes lp923920 Change-Id: I3e48441d63b6504fd088aa07241f66d63590d935
This commit is contained in:
@@ -46,7 +46,7 @@ class HTTPClient(httplib2.Http):
|
|||||||
self.tenant_id = tenant_id
|
self.tenant_id = tenant_id
|
||||||
self.tenant_name = tenant_name
|
self.tenant_name = tenant_name
|
||||||
self.password = password
|
self.password = password
|
||||||
self.auth_url = auth_url
|
self.auth_url = auth_url.rstrip('/') if auth_url else None
|
||||||
self.version = 'v2.0'
|
self.version = 'v2.0'
|
||||||
self.region_name = region_name
|
self.region_name = region_name
|
||||||
self.auth_token = token
|
self.auth_token = token
|
||||||
|
@@ -56,31 +56,31 @@ class OpenStackIdentityShell(object):
|
|||||||
action='store_true',
|
action='store_true',
|
||||||
help=argparse.SUPPRESS)
|
help=argparse.SUPPRESS)
|
||||||
|
|
||||||
parser.add_argument('--os-username',
|
parser.add_argument('--username',
|
||||||
default=env('OS_USERNAME'),
|
default=env('OS_USERNAME'),
|
||||||
help='Defaults to env[OS_USERNAME].')
|
help='Defaults to env[OS_USERNAME].')
|
||||||
|
|
||||||
parser.add_argument('--os-password',
|
parser.add_argument('--password',
|
||||||
default=env('OS_PASSWORD'),
|
default=env('OS_PASSWORD'),
|
||||||
help='Defaults to env[OS_PASSWORD].')
|
help='Defaults to env[OS_PASSWORD].')
|
||||||
|
|
||||||
parser.add_argument('--os-tenant_name',
|
parser.add_argument('--tenant_name',
|
||||||
default=env('OS_TENANT_NAME'),
|
default=env('OS_TENANT_NAME'),
|
||||||
help='Defaults to env[OS_TENANT_NAME].')
|
help='Defaults to env[OS_TENANT_NAME].')
|
||||||
|
|
||||||
parser.add_argument('--os-tenant_id',
|
parser.add_argument('--tenant_id',
|
||||||
default=env('OS_TENANT_ID'),
|
default=env('OS_TENANT_ID'),
|
||||||
help='Defaults to env[OS_TENANT_ID].')
|
help='Defaults to env[OS_TENANT_ID].')
|
||||||
|
|
||||||
parser.add_argument('--os-auth-url',
|
parser.add_argument('--auth-url',
|
||||||
default=env('OS_AUTH_URL'),
|
default=env('OS_AUTH_URL'),
|
||||||
help='Defaults to env[OS_AUTH_URL].')
|
help='Defaults to env[OS_AUTH_URL].')
|
||||||
|
|
||||||
parser.add_argument('--os-region_name',
|
parser.add_argument('--region_name',
|
||||||
default=env('KEYSTONE_REGION_NAME'),
|
default=env('OS_REGION_NAME'),
|
||||||
help='Defaults to env[KEYSTONE_REGION_NAME].')
|
help='Defaults to env[OS_REGION_NAME].')
|
||||||
|
|
||||||
parser.add_argument('--os-version',
|
parser.add_argument('--version',
|
||||||
default=env('KEYSTONE_VERSION'),
|
default=env('KEYSTONE_VERSION'),
|
||||||
help='Accepts 1.0 or 1.1, defaults to env[KEYSTONE_VERSION].')
|
help='Accepts 1.0 or 1.1, defaults to env[KEYSTONE_VERSION].')
|
||||||
|
|
||||||
@@ -135,7 +135,7 @@ class OpenStackIdentityShell(object):
|
|||||||
(options, args) = parser.parse_known_args(argv)
|
(options, args) = parser.parse_known_args(argv)
|
||||||
|
|
||||||
# build available subcommands based on version
|
# build available subcommands based on version
|
||||||
subcommand_parser = self.get_subcommand_parser(options.os_version)
|
subcommand_parser = self.get_subcommand_parser(options.version)
|
||||||
self.parser = subcommand_parser
|
self.parser = subcommand_parser
|
||||||
|
|
||||||
# Parse args again and call whatever callback was selected
|
# Parse args again and call whatever callback was selected
|
||||||
@@ -154,28 +154,28 @@ class OpenStackIdentityShell(object):
|
|||||||
# for username or apikey but for compatibility it is not.
|
# for username or apikey but for compatibility it is not.
|
||||||
|
|
||||||
if not utils.isunauthenticated(args.func):
|
if not utils.isunauthenticated(args.func):
|
||||||
if not args.os_username:
|
if not args.username:
|
||||||
raise exc.CommandError("You must provide a username:"
|
raise exc.CommandError("You must provide a username "
|
||||||
"via --username or env[OS_USERNAME]")
|
"via either --username or env[OS_USERNAME]")
|
||||||
if not args.os_password:
|
|
||||||
raise exc.CommandError("You must provide a password, either"
|
|
||||||
"via --password or env[OS_PASSWORD]")
|
|
||||||
|
|
||||||
if not args.os_auth_url:
|
if not args.password:
|
||||||
raise exc.CommandError("You must provide a auth url, either"
|
raise exc.CommandError("You must provide a password "
|
||||||
"via --os-auth_url or via"
|
"via either --password or env[OS_PASSWORD]")
|
||||||
"env[OS_AUTH_URL]")
|
|
||||||
|
if not args.auth_url:
|
||||||
|
raise exc.CommandError("You must provide an auth url "
|
||||||
|
"via either --auth_url or via env[OS_AUTH_URL]")
|
||||||
|
|
||||||
if utils.isunauthenticated(args.func):
|
if utils.isunauthenticated(args.func):
|
||||||
self.cs = shell_generic.CLIENT_CLASS(endpoint=args.os_auth_url)
|
self.cs = shell_generic.CLIENT_CLASS(endpoint=args.auth_url)
|
||||||
else:
|
else:
|
||||||
self.cs = self.get_api_class(options.version)(
|
self.cs = self.get_api_class(options.version)(
|
||||||
username=args.os_username,
|
username=args.username,
|
||||||
tenant_name=args.os_tenant_name,
|
tenant_name=args.tenant_name,
|
||||||
tenant_id=args.os_tenant_id,
|
tenant_id=args.tenant_id,
|
||||||
password=args.os_password,
|
password=args.password,
|
||||||
auth_url=args.os_auth_url,
|
auth_url=args.auth_url,
|
||||||
region_name=args.os_region_name)
|
region_name=args.region_name)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
if not utils.isunauthenticated(args.func):
|
if not utils.isunauthenticated(args.func):
|
||||||
|
Reference in New Issue
Block a user