diff --git a/examples/common.py b/examples/common.py index 6e40b9a92..f681a955f 100755 --- a/examples/common.py +++ b/examples/common.py @@ -171,6 +171,14 @@ def option_parser(): parser = argparse.ArgumentParser( description='A demonstration framework') # Global arguments + parser.add_argument( + '--os-cloud', + dest='cloud', + metavar='', + default=env('OS_CLOUD', default=None), + help=('Cloud configuration from ' + + 'https://pypi.python.org/pypi/os-client-config (Env: OS_CLOUD)') + ) parser.add_argument( '--os-auth-plugin', dest='auth_plugin', diff --git a/examples/connection.py b/examples/connection.py index 154a398f2..50991e603 100644 --- a/examples/connection.py +++ b/examples/connection.py @@ -21,25 +21,17 @@ For example: import sys +import os_client_config + from examples import common from openstack import connection def make_connection(opts): - args = { - 'auth_plugin': opts.auth_plugin, - 'auth_url': opts.auth_url, - 'project_name': opts.project_name, - 'domain_name': opts.domain_name, - 'project_domain_name': opts.project_domain_name, - 'user_domain_name': opts.user_domain_name, - 'username': opts.username, - 'password': opts.password, - 'trust_id': opts.trust_id, - 'verify': opts.verify, - 'token': opts.token, - } - conn = connection.Connection(preference=opts.user_preferences, **args) + occ = os_client_config.OpenStackConfig() + cloud = occ.get_one_cloud(opts.cloud, opts) + auth = cloud.config['auth'] + conn = connection.Connection(preference=opts.user_preferences, **auth) return conn