Exemplo n.º 1
0
 def setUp(self):
     super(TestContainer, self).setUp()
     self.app.client_manager.object_store = object_store.APIv1(
         session=mock.Mock(),
         service_type="object-store",
     )
     self.api = self.app.client_manager.object_store
def run(opts):
    """Run the examples"""

    # Set up certificate verification and CA bundle
    # NOTE(dtroyer): This converts from the usual OpenStack way to the single
    #                requests argument and is an app-specific thing because
    #                we want to be like OpenStackClient.
    if opts.os_cacert:
        verify = opts.os_cacert
    else:
        verify = not opts.insecure

    # get a session
    # common.make_session() does all the ugly work of mapping
    # CLI options/env vars to the required plugin arguments.
    # The returned session will have a configured auth object
    # based on the selected plugin's available options.
    # So to do...oh, just go to api.auth.py and look at what it does.
    session = common.make_session(opts, verify=verify)

    # Extract an endpoint
    auth_ref = session.auth.get_auth_ref(session)

    if opts.os_url:
        endpoint = opts.os_url
    else:
        endpoint = auth_ref.service_catalog.url_for(
            service_type='object-store',
            endpoint_type='public',
        )

    # At this point we have a working session with a configured authentication
    # plugin.  From here on it is the app making the decisions.  Need to
    # talk to two clouds?  Go back and make another session but with opts
    # set to different credentials.  Or use a config file and load it
    # directly into the plugin.  This example doesn't show that (yet).
    # Want to work ahead?  Look into the plugin load_from_*() methods
    # (start in keystoneclient/auth/base.py).

    # This example is for the Object Store API so make one
    obj_api = object_store.APIv1(
        session=session,
        service_type='object-store',
        endpoint=endpoint,
    )

    # Do useful things with it

    c_list = obj_api.container_list()
    print("Name\tCount\tBytes")
    for c in c_list:
        print("%s\t%d\t%d" % (c['name'], c['count'], c['bytes']))

    if len(c_list) > 0:
        # See what is in the first container
        o_list = obj_api.object_list(c_list[0]['name'])
        print("\nObject")
        for o in o_list:
            print("%s" % o)
Exemplo n.º 3
0
    def setUp(self):
        super(TestObjectv1, self).setUp()

        self.app.client_manager.session = session.Session()
        self.app.client_manager.object_store = object_store.APIv1(
            session=self.app.client_manager.session,
            endpoint=ENDPOINT,
        )
Exemplo n.º 4
0
    def setUp(self):
        super(TestObjectAll, self).setUp()

        self.app.client_manager.session = session.Session()
        self.requests_mock = self.useFixture(fixture.Fixture())

        # TODO(dtroyer): move this to object_fakes.TestObjectv1
        self.app.client_manager.object_store = object_store.APIv1(
            session=self.app.client_manager.session,
            endpoint=object_fakes.ENDPOINT,
        )
Exemplo n.º 5
0
def make_client(instance):
    """Returns an object-store API client."""

    endpoint = instance.get_endpoint_for_service_type(
        'object-store',
        region_name=instance._region_name,
    )

    client = object_store_v1.APIv1(
        session=instance.session,
        service_type='object-store',
        endpoint=endpoint,
    )
    return client
Exemplo n.º 6
0
 def setUp(self):
     super(TestObjectAPIv1, self).setUp()
     sess = session.Session()
     self.api = object_store.APIv1(session=sess, endpoint=FAKE_URL)
     self.requests_mock = self.useFixture(fixture.Fixture())