Template for modules that use pbr?

Tim Landscheidt tim at tim-landscheidt.de
Wed Oct 29 22:27:57 UTC 2014


Hi,

I'm trying to update git-review to 1.24.  With that version,
git-review uses pbr.  I have no deeper knowledge of Python
packaging in Fedora and only tweaked the spec file so that
it works for me
(cf. https://github.com/scfc/fedora-git-review/commit/b35c26010d67affd5da0305af2c1d9965c571fd3),
so I wanted to solicit some advice on how to do it
right(TM).

1. Previously, Fedora used GitHub "releases" that appear to
   be verbatim snapshots of the source repository.  But with
   https://github.com/openstack-infra/git-review/archive/1.24.tar.gz,
   this no longer works as "python setup.py build" gives:
   "error in setup command: Error parsing
   /tmp/tmp.ITVvwuYttj/git-review-1.24/setup.cfg: Exception:
   Versioning for this project requires either an sdist tar-
   ball, or access to an upstream git repository."  However,
   using
   http://pypi.python.org/packages/source/g/git-review/git-review-1.24.tar.gz
   works fine.

   Comparing the two shows a number of additional files in
   the latter (AUTHORS, ChangeLog, git_review.egg-info,
   PKG-INFO).  Am I correct to assume that this is a problem
   upstream, i. e. that the tarballs should not have been
   published in this state, and/or is there a way to work
   around that in the spec file?

2. By default, pbr seems to pull any dependencies from the
   network.
   http://docs.openstack.org/developer/pbr/packagers.html
   suggests that this can and should be avoided by setting
   SKIP_PIP_INSTALL=1.  Is there a template for how to do
   that properly, i. e. in a macro or just prepending to
   %{__python}, etc.?

3. Testing with Koji
   (cf. http://koji.fedoraproject.org/koji/taskinfo?taskID=7977881),
   the build log
   (cf. https://kojipkgs.fedoraproject.org//work/tasks/7881/7977881/build.log)
   starts with:

   | Mock Version: 1.1.41
   | Mock Version: 1.1.41
   | ENTER do(['bash', '--login', '-c', 'rpmbuild -bs --target noarch --nodeps builddir/build/SPECS/git-review.spec'], False, '/var/lib/mock/f19-build-2538894-429281/root/', None, 86400, True, False, 1000, 425, None, False, {'LANG': 'en_US.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOSTNAME': 'mock', 'PROMPT_COMMAND': 'echo -n "<mock-chroot>"', 'HOME': '/builddir', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin'}, logger=<mockbuild.trace_decorator.getLog object at 0x1725dd0>)
   | Executing command: ['bash', '--login', '-c', 'rpmbuild -bs --target noarch --nodeps builddir/build/SPECS/git-review.spec'] with env {'LANG': 'en_US.UTF-8', 'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOSTNAME': 'mock', 'PROMPT_COMMAND': 'echo -n "<mock-chroot>"', 'HOME': '/builddir', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin'}
   | sh: /usr/bin/python: No such file or directory
   | sh: /usr/bin/python: No such file or directory
   | [...]

   Is that to be expected?

Of course, any other advice is also much appreciated.

TIA,
Tim



More information about the python-devel mailing list