Health Check (OSTF) does not work in Multi Region environment

Bug #1686094 reported by Michal Skalski on 2017-04-25
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Medium
Fuel QA Team

Bug Description

When we have multi region environment OSTF tests does not work because we do not pass region name to underlay clients:

2017-04-25 12:40:17 INFO (test_mixins) STEP:1, verify action: 'flavor listing'
2017-04-25 12:40:17 ERROR (test_mixins) AmbiguousEndpoints: [{u'adminURL': u'http://192.168.0.2:8774/v2.1', u'region': u'RegionOne', u'internalURL': u'http://192.168.0.2:8774/v2.1', 'serviceName': u'nova', u'id': u'2c0bc9037a474959bc9c9c2eac0aa0c3', u'publicURL': u'http://172.16.0.3:8774/v2.1'}, {u'adminURL': u'http://192.168.0.101:8774/v2.1/f70e9e636b2f434fa2fdfa88289fd49f', u'region': u'RegionTwo', u'internalURL': u'http://192.168.0.101:8774/v2.1/f70e9e636b2f434fa2fdfa88289fd49f', 'serviceName': u'nova', u'id': u'1e6ccd2bd2224ae6a2d5d187fb865022', u'publicURL': u'http://10.10.10.2:8774/v2.1/f70e9e636b2f434fa2fdfa88289fd49f'}]
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/fuel_health/common/test_mixins.py", line 174, in verify
    result = func(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/fuel_health/nmanager.py", line 1233, in _list_flavors
    flavors = client.flavors.list()
  File "/usr/lib/python2.7/site-packages/novaclient/v2/flavors.py", line 132, in list
    return self._list("/flavors%s%s" % (detail, query_string), "flavors")
  File "/usr/lib/python2.7/site-packages/novaclient/base.py", line 249, in _list
    resp, body = self.api.client.get(url)
  File "/usr/lib/python2.7/site-packages/novaclient/client.py", line 480, in get
    return self._cs_request(url, 'GET', **kwargs)
  File "/usr/lib/python2.7/site-packages/novaclient/client.py", line 436, in _cs_request
    self.authenticate()
  File "/usr/lib/python2.7/site-packages/novaclient/client.py", line 593, in authenticate
    auth_url = self._v2_auth(auth_url)
  File "/usr/lib/python2.7/site-packages/novaclient/client.py", line 684, in _v2_auth
    return self._authenticate(url, body)
  File "/usr/lib/python2.7/site-packages/novaclient/client.py", line 699, in _authenticate
    return self._extract_service_catalog(url, resp, respbody)
  File "/usr/lib/python2.7/site-packages/novaclient/client.py", line 522, in _extract_service_catalog
    self.management_url = self.get_service_url(self.service_type)
  File "/usr/lib/python2.7/site-packages/novaclient/client.py", line 499, in get_service_url
    volume_service_name=self.volume_service_name,)
  File "/usr/lib/python2.7/site-packages/novaclient/service_catalog.py", line 87, in url_for
    endpoints=matching_endpoints)
AmbiguousEndpoints: AmbiguousEndpoints: [{u'adminURL': u'http://192.168.0.2:8774/v2.1', u'region': u'RegionOne', u'internalURL': u'http://192.168.0.2:8774/v2.1', 'serviceName': u'nova', u'id': u'2c0bc9037a474959bc9c9c2eac0aa0c3', u'publicURL': u'http://172.16.0.3:8774/v2.1'}, {u'adminURL': u'http://192.168.0.101:8774/v2.1/f70e9e636b2f434fa2fdfa88289fd49f', u'region': u'RegionTwo', u'internalURL': u'http://192.168.0.101:8774/v2.1/f70e9e636b2f434fa2fdfa88289fd49f', 'serviceName': u'nova', u'id': u'1e6ccd2bd2224ae6a2d5d187fb865022', u'publicURL': u'http://10.10.10.2:8774/v2.1/f70e9e636b2f434fa2fdfa88289fd49f'}]
2017-04-25 12:40:17 ERROR (nose_storage_plugin) fuel_health.tests.sanity.test_sanity_compute.SanityComputeTest.test_list_flavors
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/unittest2/case.py", line 67, in testPartExecutor
    yield
  File "/usr/lib/python2.7/site-packages/unittest2/case.py", line 601, in run
    testMethod()
  File "/usr/lib/python2.7/site-packages/fuel_health/tests/sanity/test_sanity_compute.py", line 85, in test_list_flavors
    self.compute_client)
  File "/usr/lib/python2.7/site-packages/fuel_health/common/test_mixins.py", line 180, in verify
    " Please refer to OpenStack logs for more details.")
  File "/usr/lib/python2.7/site-packages/unittest2/case.py", line 666, in fail
    raise self.failureException(msg)
AssertionError: Step 1 failed: Flavors list is unavailable. Please refer to OpenStack logs for more details.

Snapshot: https://drive.google.com/file/d/0ByJ7mKmkSupcNk0tSjlmLXdlczQ/view?usp=sharing

It could be resolved in the same way as we now allow provide user credentials, just add field for region name.

Changed in fuel:
assignee: nobody → Fuel QA Team (fuel-qa)
milestone: none → 12.0
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers