Bug 2109541 - novaclient.tests.unit.test_shell.ShellTest.test_osprofiler KeyError: 'profile'
Summary: novaclient.tests.unit.test_shell.ShellTest.test_osprofiler KeyError: 'profile'
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: python-novaclient
Version: 17.0 (Wallaby)
Hardware: Unspecified
OS: Unspecified
low
medium
Target Milestone: ---
: ---
Assignee: René Ribaud
QA Contact: OSP DFG:Compute
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-07-21 14:01 UTC by David Sariel
Modified: 2023-12-15 04:25 UTC (History)
12 users (show)

Fixed In Version: python-novaclient-17.4.0-1.20220830131058.54d4da1.el9ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2023-08-16 01:11:24 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
RDO 44616 0 None None None 2022-08-22 17:46:21 UTC
Red Hat Issue Tracker OSP-17780 0 None None None 2022-07-21 14:14:28 UTC
Red Hat Product Errata RHEA-2023:4577 0 None None None 2023-08-16 01:11:57 UTC

Description David Sariel 2022-07-21 14:01:21 UTC
Description of problem:

2 unit tests failed osp-rpm-py39 check gate

2022-07-21 13:42:38.317567 | container | Ran: 3335 tests in 4.3137 sec.
2022-07-21 13:42:38.317576 | container |  - Passed: 3333
2022-07-21 13:42:38.317583 | container |  - Skipped: 0
2022-07-21 13:42:38.317592 | container |  - Expected Fail: 0
2022-07-21 13:42:38.317601 | container |  - Unexpected Success: 0
2022-07-21 13:42:38.317608 | container |  - Failed: 2
2022-07-21 13:42:38.317617 | container | Sum of execute time for each test: 56.5966 sec.


traceback 

2022-07-21 13:42:38.317116 | container | ==============================
2022-07-21 13:42:38.317128 | container | Failed 2 tests - output below:
2022-07-21 13:42:38.317138 | container | ==============================
2022-07-21 13:42:38.317147 | container |
2022-07-21 13:42:38.317155 | container | novaclient.tests.unit.test_shell.ShellTest.test_osprofiler
2022-07-21 13:42:38.317164 | container | ----------------------------------------------------------
2022-07-21 13:42:38.317172 | container |
2022-07-21 13:42:38.317181 | container | Captured traceback:
2022-07-21 13:42:38.317189 | container | ~~~~~~~~~~~~~~~~~~~
2022-07-21 13:42:38.317198 | container |     Traceback (most recent call last):
2022-07-21 13:42:38.317207 | container |       File "/usr/lib/python3.9/site-packages/requests_mock/mocker.py", line 262, in inner
2022-07-21 13:42:38.317236 | container |         return func(*args, **kwargs)
2022-07-21 13:42:38.317256 | container |       File "/root/src/code.engineering.redhat.com/python-novaclient/novaclient/tests/unit/test_shell.py", line 668, in test_osprofiler
2022-07-21 13:42:38.317266 | container |         self.shell('list --profile swordfish', (0, 2))
2022-07-21 13:42:38.317276 | container |       File "/root/src/code.engineering.redhat.com/python-novaclient/novaclient/tests/unit/test_shell.py", line 399, in shell
2022-07-21 13:42:38.317285 | container |         _shell.main(argstr.split())
2022-07-21 13:42:38.317295 | container |       File "/root/src/code.engineering.redhat.com/python-novaclient/novaclient/shell.py", line 659, in main
2022-07-21 13:42:38.317305 | container |         self.cs = client.Client(
2022-07-21 13:42:38.317314 | container |       File "/root/src/code.engineering.redhat.com/python-novaclient/novaclient/tests/unit/test_shell.py", line 665, in client
2022-07-21 13:42:38.317323 | container |         self.assertEqual('swordfish', kwargs['profile'])
2022-07-21 13:42:38.317333 | container |     KeyError: 'profile'
2022-07-21 13:42:38.317343 | container |
2022-07-21 13:42:38.317352 | container |
2022-07-21 13:42:38.317362 | container | novaclient.tests.unit.test_shell.ShellTestKeystoneV3.test_osprofiler
2022-07-21 13:42:38.317372 | container | --------------------------------------------------------------------
2022-07-21 13:42:38.317381 | container |
2022-07-21 13:42:38.317390 | container | Captured traceback:
2022-07-21 13:42:38.317399 | container | ~~~~~~~~~~~~~~~~~~~
2022-07-21 13:42:38.317408 | container |     Traceback (most recent call last):
2022-07-21 13:42:38.317418 | container |       File "/usr/lib/python3.9/site-packages/requests_mock/mocker.py", line 262, in inner
2022-07-21 13:42:38.317431 | container |         return func(*args, **kwargs)
2022-07-21 13:42:38.317440 | container |       File "/root/src/code.engineering.redhat.com/python-novaclient/novaclient/tests/unit/test_shell.py", line 668, in test_osprofiler
2022-07-21 13:42:38.317449 | container |         self.shell('list --profile swordfish', (0, 2))
2022-07-21 13:42:38.317457 | container |       File "/root/src/code.engineering.redhat.com/python-novaclient/novaclient/tests/unit/test_shell.py", line 399, in shell
2022-07-21 13:42:38.317467 | container |         _shell.main(argstr.split())
2022-07-21 13:42:38.317475 | container |       File "/root/src/code.engineering.redhat.com/python-novaclient/novaclient/shell.py", line 659, in main
2022-07-21 13:42:38.317484 | container |         self.cs = client.Client(
2022-07-21 13:42:38.317493 | container |       File "/root/src/code.engineering.redhat.com/python-novaclient/novaclient/tests/unit/test_shell.py", line 665, in client
2022-07-21 13:42:38.317501 | container |         self.assertEqual('swordfish', kwargs['profile'])
2022-07-21 13:42:38.317510 | container |     KeyError: 'profile'
2022-07-21 13:42:38.317519 | container |



How reproducible:
comment reverify on the change request; https://url.corp.redhat.com/14571b8

Comment 1 René Ribaud 2022-08-04 16:47:33 UTC
It seems the osprofiler build dependency is missing on the novaclient package, making the job fail.
The osprofiler should be installed using the RDO rpm by our downstream ci, the related ansible playbook looks at the novaclient rpm spec file to found required dependencies and then installed them.
But the osprofiler dependency is missing in the novaclient spec file.

A patch is attached to this bug to the RDO team to add the missing dependency. Please look at attached RDO link.

Comment 2 Joel Capitao 2022-08-22 17:46:22 UTC
RDO patch merged in rpm-master, and is being backported to stable/wallaby-rdo branch

Comment 4 Szymon Datko 2022-10-11 14:52:27 UTC
Just to make a note, I confirmed here https://code.engineering.redhat.com/gerrit/c/python-novaclient/+/302241 that adding python3-osprofiler package resolves the issue in Component CI job for both OSP 17 and OSP 17.1

The backport from master was also merged to wallaby-rdo: https://review.rdoproject.org/r/c/openstack/novaclient-distgit/+/44616

Sounds done for me, thanks!

Comment 15 errata-xmlrpc 2023-08-16 01:11:24 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 (Release of components for Red Hat OpenStack Platform 17.1 (Wallaby)), 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/RHEA-2023:4577

Comment 16 Red Hat Bugzilla 2023-12-15 04:25:29 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 120 days


Note You need to log in before you can comment on or make changes to this bug.