885857cea7
Change-Id: I744418aa0407dd4bf34335d37527b32b98785c83
124 lines
3.2 KiB
Python
124 lines
3.2 KiB
Python
# Copyright 2016 Nokia
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
from vitrage import keystone_client
|
|
from vitrage import os_clients
|
|
from vitrageclient import client as vc
|
|
|
|
|
|
class TempestClients(object):
|
|
@classmethod
|
|
def class_init(cls, conf):
|
|
cls._conf = conf
|
|
cls._vitrage = None
|
|
cls._ceilometer = None
|
|
cls._nova = None
|
|
cls._cinder = None
|
|
cls._glance = None
|
|
cls._neutron = None
|
|
cls._heat = None
|
|
cls._mistral = None
|
|
cls._aodh = None
|
|
|
|
@classmethod
|
|
def vitrage(cls):
|
|
"""vitrage client
|
|
|
|
:rtype: vitrageclient.v1.client.Client
|
|
"""
|
|
if not cls._vitrage:
|
|
cls._vitrage = vc.Client(
|
|
'1', session=keystone_client.get_session(cls._conf))
|
|
return cls._vitrage
|
|
|
|
@classmethod
|
|
def ceilometer(cls):
|
|
"""ceilometer client
|
|
|
|
:rtype: ceilometerclient.v2.client.Client
|
|
"""
|
|
if not cls._ceilometer:
|
|
cls._ceilometer = os_clients.ceilometer_client(cls._conf)
|
|
return cls._ceilometer
|
|
|
|
@classmethod
|
|
def nova(cls):
|
|
"""nova client
|
|
|
|
:rtype: novaclient.v2.client.Client
|
|
"""
|
|
if not cls._nova:
|
|
cls._nova = os_clients.nova_client(cls._conf)
|
|
return cls._nova
|
|
|
|
@classmethod
|
|
def cinder(cls):
|
|
"""cinder client
|
|
|
|
:rtype: cinderclient.v2.client.Client
|
|
"""
|
|
if not cls._cinder:
|
|
cls._cinder = os_clients.cinder_client(cls._conf)
|
|
return cls._cinder
|
|
|
|
@classmethod
|
|
def glance(cls):
|
|
"""glance client
|
|
|
|
:rtype: glanceclient.v2.client.Client
|
|
"""
|
|
if not cls._glance:
|
|
cls._glance = os_clients.glance_client(cls._conf)
|
|
return cls._glance
|
|
|
|
@classmethod
|
|
def neutron(cls):
|
|
"""neutron client
|
|
|
|
:rtype: neutronclient.v2_0.client.Client
|
|
"""
|
|
if not cls._neutron:
|
|
cls._neutron = os_clients.neutron_client(cls._conf)
|
|
return cls._neutron
|
|
|
|
@classmethod
|
|
def heat(cls):
|
|
"""heat client
|
|
|
|
:rtype: heatclient.v1.client.Client
|
|
"""
|
|
if not cls._heat:
|
|
cls._heat = os_clients.heat_client(cls._conf)
|
|
return cls._heat
|
|
|
|
@classmethod
|
|
def mistral(cls):
|
|
"""mistral client
|
|
|
|
:rtype: mistralclient.v2.client.Client
|
|
"""
|
|
if not cls._mistral:
|
|
cls._mistral = os_clients.mistral_client(cls._conf)
|
|
return cls._mistral
|
|
|
|
@classmethod
|
|
def aodh(cls):
|
|
"""aodh client
|
|
|
|
:rtype: aodhclient.v2.client.Client
|
|
"""
|
|
if not cls._aodh:
|
|
cls._aodh = os_clients.aodh_client(cls._conf)
|
|
return cls._aodh
|