Bug 1645620 - vdsm-client has missing dependecy to PyYAML
Summary: vdsm-client has missing dependecy to PyYAML
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: vdsm
Version: 4.2.6
Hardware: x86_64
OS: Linux
high
high
Target Milestone: ovirt-4.3.0
: ---
Assignee: Marcin Sobczyk
QA Contact: Petr Kubica
URL:
Whiteboard:
Depends On:
Blocks: 1651552
TreeView+ depends on / blocked
 
Reported: 2018-11-02 16:22 UTC by Andreas Bleischwitz
Modified: 2023-03-24 14:20 UTC (History)
8 users (show)

Fixed In Version: v4.30.5
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1651552 (view as bug list)
Environment:
Last Closed: 2019-05-08 12:36:02 UTC
oVirt Team: Infra
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2019:1077 0 None None None 2019-05-08 12:36:24 UTC
oVirt gerrit 95541 0 master MERGED build: Cleanup 'PyYAML' dependency declarations 2018-11-24 04:32:06 UTC

Description Andreas Bleischwitz 2018-11-02 16:22:28 UTC
Description of problem:
During the installation of a fresh installed host the vdsm-client package throws a traceback in %post.

Version-Release number of selected component (if applicable):
vdsm-client-4.20.39.1-1.el7ev.noarch

How reproducible:
Always

Steps to Reproduce:
1. Install host
2. Install host via RHV-management ui

Actual results:
Installation is failing, traceback shown in ovirt-host-deploy log

D: %post(vdsm-client-4.20.39.1-1.el7ev.noarch): execv(/bin/sh) pid 23213
+ /usr/bin/python -c 'from vdsm.api.vdsmapi import create_cache; create_cache()'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python2.7/site-packages/vdsm/api/vdsmapi.py", line 27, in <module>
    import yaml
ImportError: No module named yaml
D: %post(vdsm-client-4.20.39.1-1.el7ev.noarch): waitpid(23213) rc 23213 status 100
warning: %post(vdsm-client-4.20.39.1-1.el7ev.noarch) scriptlet failed, exit status 1

2018-11-02 10:33:58,045+0100 DEBUG otopi.plugins.otopi.packagers.yumpackager yumpackager.verbose:76 Yum Done: vdsm-client.noarch 0:4.20.39.1-1.el7ev - u
2018-11-02 10:33:58,047+0100 ERROR otopi.plugins.otopi.packagers.yumpackager yumpackager.error:85 Yum Non-fatal POSTIN scriptlet failure in rpm package vdsm-client-4.20.39.1-1.el7ev.noarch


Expected results:
No traceback, PyYAML included in vdsm-client's dependency list.

Additional info:

# rpm -q --requires vdsm-client
/bin/sh
/usr/bin/python2
python
python(abi) = 2.7
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PartialHardlinkSets) <= 4.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
vdsm-api = 4.20.39.1-1.el7ev
vdsm-api = 4.20.39.1-1.el7ev
vdsm-python = 4.20.39.1-1.el7ev
vdsm-yajsonrpc = 4.20.39.1-1.el7ev
rpmlib(PayloadIsXz) <= 5.2-1

Comment 1 Martin Perina 2018-11-07 14:14:16 UTC
We have a dependency on PyYAML in vdsm, but we forgot to add it to vdsm-client.

The strange thing is that on all our testing systems yum installed vdsm package before vdsm-client, so this issue haven't been observed.

The workaround is to install PyYAML on the host manually before you try to add host in RHV Manager.

Comment 3 Marcin Sobczyk 2018-11-22 10:20:34 UTC
After investigation it turned out, that 'PyYAML' dependency declarations were a mess. We require 'PyYAML' at build-time for 'vdsm-api' and at run-time for 'vdsm-tests' and 'vdsm-gluster'. So an installation of 'vdsm' without 'tests' or 'gluster' will not require 'PyYAML' at all.

This is a result of dropping yaml schema files from rpms in favour of pickles.

Comment 4 Petr Kubica 2019-03-07 10:47:06 UTC
Verified
# yum deplist vdsm-gluster
package: vdsm-gluster.x86_64 4.30.10-1.el7ev
  dependency: PyYAML
   provider: PyYAML.x86_64 3.10-11.el7
  dependency: glusterfs-api >= 3.8
   provider: glusterfs-api.x86_64 3.12.2-40.el7
  dependency: glusterfs-events >= 3.8
   Unsatisfied dependency
  dependency: glusterfs-geo-replication >= 3.8
   Unsatisfied dependency
  dependency: glusterfs-server >= 3.8
   Unsatisfied dependency
  dependency: kmod-kvdo
   provider: kmod-kvdo.x86_64 6.1.1.125-5.el7
  dependency: python(abi) = 2.7
   provider: python.x86_64 2.7.5-76.el7
  dependency: python-blivet
   provider: python-blivet.noarch 1:0.61.15.72-1.el7
  dependency: python-magic
   provider: python-magic.noarch 5.11-35.el7
  dependency: vdo
   provider: vdo.x86_64 6.1.1.125-3.el7
  dependency: vdsm = 4.30.10-1.el7ev
   provider: vdsm.x86_64 4.30.10-1.el7ev
  dependency: xfsprogs
   provider: xfsprogs.x86_64 4.5.0-19.el7_6
   provider: xfsprogs.i686 4.5.0-19.el7_6

Comment 6 errata-xmlrpc 2019-05-08 12:36:02 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-2019:1077


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