[Bug 1893935] Re: [MIR] python3-vitrageclient

Launchpad Bug Tracker 1893935 at bugs.launchpad.net
Tue Mar 1 00:03:49 UTC 2022


This bug was fixed in the package heat -
1:17.0.0+git2022011216.9af3af156-0ubuntu3

---------------
heat (1:17.0.0+git2022011216.9af3af156-0ubuntu3) jammy; urgency=medium

  * d/p/drop-zun(client).patch: Rename patch and drop zun.py as well.

 -- Corey Bryant <corey.bryant at canonical.com>  Thu, 27 Jan 2022 10:30:29
-0500

** Changed in: heat (Ubuntu Jammy)
       Status: Triaged => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to heat in Ubuntu.
https://bugs.launchpad.net/bugs/1893935

Title:
  [MIR] python3-vitrageclient

Status in Ubuntu Cloud Archive:
  Fix Released
Status in Ubuntu Cloud Archive victoria series:
  Won't Fix
Status in Ubuntu Cloud Archive wallaby series:
  Won't Fix
Status in Ubuntu Cloud Archive xena series:
  Won't Fix
Status in Ubuntu Cloud Archive yoga series:
  Fix Released
Status in heat package in Ubuntu:
  Fix Released
Status in python-vitrageclient package in Ubuntu:
  Fix Released
Status in python-zunclient package in Ubuntu:
  Won't Fix
Status in python-vitrageclient source package in Groovy:
  Won't Fix
Status in python-zunclient source package in Groovy:
  Won't Fix
Status in heat source package in Hirsute:
  Won't Fix
Status in python-vitrageclient source package in Hirsute:
  Won't Fix
Status in python-zunclient source package in Hirsute:
  Won't Fix
Status in heat source package in Impish:
  Won't Fix
Status in python-vitrageclient source package in Impish:
  Won't Fix
Status in python-zunclient source package in Impish:
  Won't Fix
Status in heat source package in Jammy:
  Fix Released
Status in python-vitrageclient source package in Jammy:
  Fix Released
Status in python-zunclient source package in Jammy:
  Won't Fix

Bug description:
  == original bug report ==
  Kolla built containers with heat-engine fail with following logs:
  https://f20bec36e3f198a9ccf9-fa78c758d05065ae4af77013f9d746d5.ssl.cf2.rackcdn.com/749469/2/check/kolla-ansible-ubuntu-binary/059e66f/primary/logs/kolla/heat/heat-engine.txt

  2020-09-02 10:50:52.676 6 CRITICAL heat-engine [-] Unhandled error: AttributeError: 'EntryPoint' object has no attribute 'module'
  2020-09-02 10:50:52.676 6 ERROR heat-engine Traceback (most recent call last):
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "/usr/lib/python3/dist-packages/stevedore/extension.py", line 221, in _load_plugins
  2020-09-02 10:50:52.676 6 ERROR heat-engine     ext = self._load_one_plugin(ep,
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "/usr/lib/python3/dist-packages/stevedore/enabled.py", line 77, in _load_one_plugin
  2020-09-02 10:50:52.676 6 ERROR heat-engine     ext = super(EnabledExtensionManager, self)._load_one_plugin(
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "/usr/lib/python3/dist-packages/stevedore/extension.py", line 255, in _load_one_plugin
  2020-09-02 10:50:52.676 6 ERROR heat-engine     plugin = ep.load()
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "/usr/lib/python3.8/importlib/metadata.py", line 77, in load
  2020-09-02 10:50:52.676 6 ERROR heat-engine     module = import_module(match.group('module'))
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
  2020-09-02 10:50:52.676 6 ERROR heat-engine     return _bootstrap._gcd_import(name[level:], package, level)
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "<frozen importlib._bootstrap_external>", line 783, in exec_module
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  2020-09-02 10:50:52.676 6 ERROR heat-engine   File "/usr/lib/python3/dist-packages/heat/engine/clients/os/vitrage.py", line 16, in <module>
  2020-09-02 10:50:52.676 6 ERROR heat-engine     from vitrageclient import client as vitrage_client
  2020-09-02 10:50:52.676 6 ERROR heat-engine ModuleNotFoundError: No module named 'vitrageclient'

  Seems the culprit is missing python-vitrageclient package, which is
  part of heat requirements.txt - but not installed as a dependency when
  installing heat-engine from UCA
  (https://github.com/openstack/kolla/blob/master/docker/heat/heat-
  engine/Dockerfile.j2)

  ==================================================================

  [Impact]

  heat depends on stevedore to load client entry points. In the past,
  stevedore would just give a warning if a client failed to load (ie. due
  to an uninstalled Suggests dependency). Then stevedore changed code
  to use importlib.metadata which no longer supports ep.load(require=False), and now the failure to load a client entry point will error hard along the lines of that described above (ModuleNotFoundError: No module named 'vitrageclient'). In other words, all openstack clients that heat depends on must be installed or heat will fail hard. By getting python-vitrageclient into Ubuntu main, we can move it from Suggests to Depends and it will always be installed for heat binary packages.

  [Testcase]

  Taken from: https://bugs.launchpad.net/bugs/1958988 (Thanks to
  Francois Michaut)

  Installing heat with the following commands :

  add-apt-repository cloud-archive:xena
  apt update
  apt-get install heat-api heat-api-cfn heat-engine

  will reproduce the issue.
  heat-engine service will crash and restart continuously, all heat-related commands will fail ("openstack stack list" will output (after a very long time): ERROR: Internal Error).

  In heat-engine logs, we can see that a module named "vitrageclient" is
  missing. Running "pip3 install python-vitrageclient" fixed the issue
  and heat started working correctly.

  ==================================================================

  [MIR] python3-vitrageclient

  [Availability]
  Currently in universe

  [Rationale]
  Heat is an OpenStack project that we're ready to support in main, and it has a hard dependency on python-vitrageclient.

  [Security]
  No security history

  [Quality Assurance]
  Package works out of the box with no prompting. There are no major bugs in Ubuntu and there are no major bugs in Debian. Unit tests are run during build.

  [Dependencies]
  All are in main. Note: libjs-bootstrap is only needed for the python-vitrageclient-doc binary package which does not need to be in main.

  [Standards Compliance]
  FHS and Debian Policy compliant

  [Maintenance]
  Simple python package that the OpenStack Team will take care of

  [Background]
  This is a client library for OpenStack Vitrage built to interface with the Vitrage API. Vitrage is the OpenStack RCA (Root Cause Analysis) service for organizing, analyzing and expanding OpenStack alarms & events, yielding insights regarding the root cause of problems and deducing their existence before they are directly detected.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1893935/+subscriptions




More information about the Ubuntu-openstack-bugs mailing list