Bug 1191163

Summary: /usr/lib/python2.7/site-packages/gluster/ not owned by package or owned by wrong package
Product: [Community] GlusterFS Reporter: Kaleb KEITHLEY <kkeithle>
Component: buildAssignee: bugs <bugs>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs, extras-qa, humble.devassy, joe, jonathansteffan, kkeithle, kparal, lmohanty, ndevos, sankarshan
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1190832 Environment:
Last Closed: 2017-02-16 10:04:16 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: 1190832    
Bug Blocks:    

Description Kaleb KEITHLEY 2015-02-10 15:11:30 UTC
+++ This bug was initially created as a clone of Bug #1190832 +++

Description of problem:
$ rpm -ql glusterfs-api
/usr/lib/python2.7/site-packages/gluster/__init__.py
/usr/lib/python2.7/site-packages/gluster/__init__.pyc
/usr/lib/python2.7/site-packages/gluster/__init__.pyo
/usr/lib/python2.7/site-packages/gluster/gfapi.py
/usr/lib/python2.7/site-packages/gluster/gfapi.pyc
/usr/lib/python2.7/site-packages/gluster/gfapi.pyo
/usr/lib/python2.7/site-packages/glusterfs_api-3.5.3-py2.7.egg-info
/usr/lib64/glusterfs/3.5.3/xlator/mount/api.so
/usr/lib64/libgfapi.so.0
/usr/lib64/libgfapi.so.0.0.0

$ rpm -qf /usr/lib/python2.7/site-packages/gluster/
file /usr/lib/python2.7/site-packages/gluster is not owned by any package

As you can see, /usr/lib/python2.7/site-packages/gluster/ is being used but not owned by the package. I believe that does not conform to the packaging guidelines.

Version-Release number of selected component (if applicable):
glusterfs-api-3.5.3-1.fc21.x86_64

Comment 1 Kaleb KEITHLEY 2015-02-10 15:16:37 UTC
N.B. /usr/lib/python2.7/site-packages/glusterfs/__init__.* should be owned by -extra-translators (glupy) in 3.6 and mainline/3.7.

In 3.5 /usr/lib/python2.7/site-packages/glusterfs/__init__.* is owned by -api (gfapi).

Comment 2 Niels de Vos 2015-02-10 15:31:01 UTC
/usr/lib/python2.7/site-packages/glusterfs/__init__.* should be owned by glusterfs-api.

The reasoning for this is that the glusterfs-api package should be installed for all the language bindings, including libgfapi-python. By including the __init__.* file (and it's parent directory), Python recognizes the directory as an (empty) Python 'package'. It makes 'import glusterfs' work. By putting this file in glusterfs-api, other packages can drop-in their Python modules without needing to do anything special, they only need to have a requires on glusterfs-api.

Comment 3 Niels de Vos 2017-02-16 10:04:16 UTC
I do not think this is a problem anymore. We have introduced the python-gluster package for exactly this reason.