Bug 1619367

Summary: AssertionError during tempest test discovery
Product: Red Hat OpenStack Reporter: Archit Modi <amodi>
Component: python-gabbiAssignee: RHOS Maint <rhos-maint>
Status: CLOSED ERRATA QA Contact: Archit Modi <amodi>
Severity: medium Docs Contact:
Priority: medium    
Version: 13.0 (Queens)CC: augol, bschmaus, fcharlie, gael_rehault, goneri, jamsmith, jjoyce, jschluet, knoha, ltoscano, mburns, mfuruta, rhos-maint, slinaber, tvignaud
Target Milestone: z3Keywords: AutomationBlocker, Rebase, Triaged, ZStream
Target Release: 13.0 (Queens)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: python-gabbi-1.42.1-2.el7ost Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-11-14 01:14:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1613475    

Description Archit Modi 2018-08-20 15:49:41 UTC
Description of problem: After successful upgrade from Rhos-10 to Rhos-13, the second tempest run for Rhos-13 fail the discovery with AssertionError


Version-Release number of selected component (if applicable):
python-gabbi-1.33.0-1.el7ost.noarch
python2-heat-tests-tempest-0.1.1-0.20180514163843.9d99219.el7ost.noarch

How reproducible: Always

Steps to Reproduce:
1. Deploy Rhos-10 and upgrade to Rhos-13
2. Run tempest run --list-tests

Actual results:
[stack@undercloud-0 tempest_13]$ tempest run --list-tests
=========================
Failures during discovery
=========================
--- import errors ---
Failed to call load_tests:
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/unittest2/loader.py", line 136, in loadTestsFromModule
    return load_tests(self, tests, pattern)
  File "/usr/lib/python2.7/site-packages/heat_tempest_plugin/tests/api/test_heat_api.py", line 96, in load_tests
    test_loader_name=__name__)
  File "/usr/lib/python2.7/site-packages/gabbi/driver.py", line 76, in build_tests
    raise AssertionError('must specify exactly one of host or intercept')
AssertionError: must specify exactly one of host or intercept

================================================================================
The above traceback was encountered during test discovery which imports all the found test modules in the specified test_path.

Expected results:
Command successfully executes


Additional info:

Comment 3 Archit Modi 2018-08-20 16:02:59 UTC
So, the issue here is that Gabbi is versioned at 1.33 (python-gabbi-1.33.0-1.el7ost.noarch) and the fix is released in >=1.42.* acc to the upstream bug. I think the resolution should be fairly simple, just upgrading the Gabbi version to >=1.42

Comment 5 Luigi Toscano 2018-08-22 14:31:36 UTC
An additional note: while this bug is visible when an user tries to execute tests from the Heat Tempest plugin, Fast Forward Upgrades users are always affected if they run Tempest tests on 10, upgrade to 13 and re-run Tempest tests.

When executing Tempest tests from the undercloud on 10, the package python-heat-tests is installed due to dependencies. When the undercloud is upgraded, python2-heat-tempest-tests replaces it, so the bug always happens.

Comment 20 errata-xmlrpc 2018-11-14 01:14:59 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:3611