def get_octaviaclient(self):
     keystone = keystoneclient.Client(session=self._keystone_session)
     service_id = keystone.services.list(type='load-balancer')[0].id
     octavia_endpoint = keystone.endpoints.list(service=service_id,
                                                interface='public')[0].url
     return octaviaclient.OctaviaAPI(session=self._keystone_session,
                                     endpoint=octavia_endpoint)
Beispiel #2
0
 def _create(self, version=None):
     interface = self._get_client_option(CLIENT_NAME, 'endpoint_type')
     endpoint = self.url_for(service_type=self.LOADBALANCER,
                             endpoint_type=interface)
     return octavia.OctaviaAPI(session=self.context.keystone_session,
                               service_type=self.LOADBALANCER,
                               endpoint=endpoint)
Beispiel #3
0
def get_octaviaclient(region):
    ks = get_keystoneclient()

    service = ks.services.list(name="octavia")[0]
    endpoint = ks.endpoints.list(service=service,
                                 region=region,
                                 interface="public")[0]
    return octavia.OctaviaAPI(session=get_auth_session(),
                              endpoint=endpoint.url)
Beispiel #4
0
    def create_client(self, version=None, service_type=None):
        """Return octavia client."""
        from octaviaclient.api.v2 import octavia

        kw_args = {}
        if self.credential.endpoint_type:
            kw_args["endpoint_type"] = self.credential.endpoint_type

        client = octavia.OctaviaAPI(endpoint=self._get_endpoint(service_type),
                                    session=self.keystone.get_session()[0],
                                    **kw_args)
        return client
Beispiel #5
0
def make_client(instance):
    """Returns a load balancer service client"""
    endpoint = instance.get_endpoint_for_service_type(
        'load-balancer',
        region_name=instance.region_name,
        interface=instance.interface,
    )
    client = octavia.OctaviaAPI(
        session=instance.session,
        service_type='load-balancer',
        endpoint=endpoint,
    )
    return client
Beispiel #6
0
    def octavia(self):
        if self._octavia:
            return self._octavia

        region_name = self._get_client_option('octavia', 'region_name')
        endpoint_type = self._get_client_option('octavia', 'endpoint_type')
        endpoint = self.url_for(service_type='load-balancer',
                                interface=endpoint_type,
                                region_name=region_name)
        session = self.keystone().session
        return octavia.OctaviaAPI(session=session,
                                  service_type='load-balancer',
                                  endpoint=endpoint)
Beispiel #7
0
    def lb_client(self):
        if self._lb_client is None:
            endpoint = aodh_keystone.url_for(
                self.conf,
                service_type='load-balancer',
                interface="internal",
                region_name=self.conf.service_credentials.region_name)
            self._lb_client = octavia.OctaviaAPI(
                session=aodh_keystone.get_session(self.conf),
                service_type='load-balancer',
                endpoint=endpoint)

        return self._lb_client
Beispiel #8
0
def getOctaviaClient(options):
    authurl = options.os_auth_url
    user_name = options.os_username
    pass_word = options.os_password
    tenantname = options.purge_project
    os_region_name = options.os_region_name

    auth = identity.V3Password(auth_url=authurl,
                               username=user_name,
                               user_domain_name='Default',
                               password=pass_word,
                               project_name=tenantname,
                               project_domain_name='Default')
    sess = session.Session(auth=auth)
    endpoint = sess.get_endpoint(service_type='load-balancer',
                                 region_name=os_region_name)
    return octavia.OctaviaAPI(endpoint=endpoint, session=sess)
Beispiel #9
0
def getOctaviaClient(options):
    authurl = options.os_auth_url
    user_name = options.os_username
    pass_word = options.os_password
    #tenant name and project name is the same thing
    try:
        tenantname = options.os_project_name
    except AttributeError:
        tenantname = options.os_tenant_name
    os_region_name = options.os_region_name
    os_project_id = options.os_project_id

    auth = identity.V3Password(auth_url=authurl,
                               username=user_name,
                               user_domain_name='Default',
                               password=pass_word,
                               project_name=tenantname,
                               project_domain_name='Default')
    sess = session.Session(auth=auth)
    network_client = client.Client(session=sess)
    return octavia.OctaviaAPI(
        endpoint=network_client.get_auth_info()['endpoint_url'], session=sess)
Beispiel #10
0
 def init_client(self, session):
     keystone_client = keystone.get_keystone_client(session=session)
     endpoint = get_octavia_endpoint(keystone_client=keystone_client)
     return octavia.OctaviaAPI(session=session, endpoint=endpoint.url)
Beispiel #11
0
 def setUp(self):
     super(TestOctaviaClient, self).setUp()
     sess = session.Session()
     self.api = octavia.OctaviaAPI(session=sess, endpoint=FAKE_URL)
     self.requests_mock = self.useFixture(fixture.Fixture())