Bug #11388
closed/usr/bin/ceph from ceph-common is broken without installing ceph
0%
Description
~# ceph Traceback (most recent call last): File "/usr/bin/ceph", line 74, in <module> from ceph_argparse import \ ImportError: No module named ceph_argparse
Reason is that ceph_argparse.py is now packaged in ceph instead of python-ceph, as was the case up to giant.
~# dpkg -S /usr/lib/python2.7/dist-packages/ceph_argparse.py ceph: /usr/lib/python2.7/dist-packages/ceph_argparse.py
Updated by Ken Dreyer about 9 years ago
Confirmed; "/usr/bin/ceph
" is in ceph-common, but "ceph_argparse.py
" is not: https://github.com/ceph/ceph/blob/v0.94/debian/ceph-common.install
I think the problem is in https://github.com/ceph/ceph/commit/2a23eac54957e596d99985bb9e187a668251a9ec . The commit log says "move argparse to ceph-common", but that's not what the commit does - it moves it to the main "ceph" package instead.
Given that we desire the following:/usr/bin/ceph
should remain in ceph-common/usr/bin/ceph
's dependencies should be fully-satisfied by the packaging metadata (it should not crash)- The Debian and Red Hat packaging file lists should be aligned, and the Red Hat packaging does ship
ceph_argparse.py
in the ceph-common RPM.
... the solution here is to move ceph_argparse.py out of the "ceph" deb and into the "ceph-common" deb.
Updated by Yuri Weinstein about 9 years ago
- Project changed from Stable releases to devops
- Affected Versions deleted (
)
Updated by Ken Dreyer about 9 years ago
- Status changed from New to In Progress
Branch for master: https://github.com/ceph/ceph/tree/wip-11388-debian-argparse
Branch for hammer: https://github.com/ceph/ceph/tree/wip-11388-hammer-debian-argparse
Updated by Ken Dreyer about 9 years ago
Jens, our "gitbuilder" CI system has built the branches in Git that I've posted above. Can you test the ceph-common package here? (Ideally you'd uninstall "ceph" to be sure this is working as you'd expect.)
http://gitbuilder.ceph.com/ceph-deb-precise-x86_64-basic/ref/wip-11388-hammer-debian-argparse/
There are general instructions for testing gitbuilder packages, here: http://ceph.com/docs/master/install/get-packages/#add-ceph-development
As you can see in the URL above, the branch name with my fix is "wip-11388-hammer-debian-argparse"
Updated by Jens Harbott about 9 years ago
Tested the new package and it works fine.
Thanks for the fast solution.
Updated by Jens Harbott about 9 years ago
Minor nit about the commit message: The library is called ceph_argparse, there is a different global python library called argparse, so maybe you can be more explicit there to avoid confusion.
Updated by Ken Dreyer about 9 years ago
That's a great catch, thanks Jens.
I've amended the commit message and re-pushed to the branch for master: https://github.com/ceph/ceph/tree/wip-11388-debian-argparse
Since this touches the debian files as well, this PR might conflict with the one currently under review, at https://github.com/ceph/ceph/pull/4353 . As soon as that one is merged, I'll submit this one.
Updated by Ken Dreyer about 9 years ago
- Tracker changed from Tasks to Bug
- Status changed from In Progress to Pending Backport
- Regression set to No
Updated by Jens Harbott almost 9 years ago
Any chance to get this fix backported into hammer soon? Turns out that 0.94.2 is still broken.
Updated by Ken Dreyer almost 9 years ago
( For the record, the PR where this was merged to master is https://github.com/ceph/ceph/pull/4517 )
Updated by Nathan Cutler almost 9 years ago
- Status changed from Pending Backport to Resolved