[Ceilometer] Fix for sanity test

Add aodhclient to fuel-ostf and rewrite sanity check using it

Change-Id: I90cdbe08c67d0a79e7c10f2e4bee7d9e11d8165a
Closes-bug: #1553189
This commit is contained in:
vgusev 2016-03-10 15:59:17 +03:00 committed by Timur Nurlygayanov
parent 24db798ca9
commit d6ec2aa719
4 changed files with 21 additions and 3 deletions

View File

@ -55,6 +55,7 @@ try:
except Exception:
LOG.warning('Ironic client could not be imported')
import aodhclient.client
import cinderclient.client
import glanceclient.client
import keystoneclient
@ -67,6 +68,8 @@ from fuel_health.common.utils.data_utils import rand_name
from fuel_health import exceptions
import fuel_health.manager
import fuel_health.test
import keystoneauth1.identity
import keystoneauth1.session
class OfficialClientManager(fuel_health.manager.Manager):
@ -109,6 +112,7 @@ class OfficialClientManager(fuel_health.manager.Manager):
self.neutron_client = self._get_neutron_client()
self.glance_client_v1 = self._get_glance_client(version=1)
self.ironic_client = self._get_ironic_client()
self.aodh_client = self._get_aodh_client()
self.client_attr_names = [
'compute_client',
'identity_client',
@ -121,7 +125,8 @@ class OfficialClientManager(fuel_health.manager.Manager):
'sahara_client',
'ceilometer_client',
'neutron_client',
'ironic_client'
'ironic_client',
'aodh_client'
]
def _get_compute_client(self, username=None, password=None,
@ -343,6 +348,17 @@ class OfficialClientManager(fuel_health.manager.Manager):
os_auth_token=keystone.auth_token,
ironic_url=endpoint, insecure=True)
def _get_aodh_client(self, version='2'):
username = self.config.identity.admin_username
password = self.config.identity.admin_password
tenant = self.config.identity.admin_tenant_name
auth_url = self.config.identity.uri
auth = keystoneauth1.identity.v2.Password(
auth_url=auth_url, username=username,
password=password, tenant_name=tenant)
sess = keystoneauth1.session.Session(auth=auth, verify=False)
return aodhclient.client.Client(version, sess)
class OfficialClientTest(fuel_health.test.TestCase):
manager_class = OfficialClientManager

View File

@ -40,8 +40,8 @@ class CeilometerApiTests(ceilometermanager.CeilometerBaseTest):
1, fail_msg, 'getting list of meters', q)
fail_msg = 'Failed to get list of alarms.'
self.verify(60, self.ceilometer_client.alarms.list,
2, fail_msg, 'getting list of alarms')
self.verify(60, self.aodh_client.alarm.list,
2, fail_msg, 'getting list of alarms', 'threshold')
fail_msg = 'Failed to get list of resources.'
an_hour_ago = (datetime.datetime.now() -

View File

@ -1,5 +1,6 @@
oslo.config>=2.3.0
aodhclient>=0.1.0
python-cinderclient>=1.3.1
python-ceilometerclient>=1.5.0
python-keystoneclient>=1.6.0,!=1.8.0

View File

@ -17,6 +17,7 @@ BuildRequires: python-pbr >= 1.6
BuildArch: noarch
# fuel_health_reqs
Requires: python-aodhclient >= 0.1.0
Requires: python-amqplib >= 1.0.2
Requires: python-anyjson >= 0.3.3
Requires: python-oslo-config >= 1.1.1