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/b35c26010d67affd5da0305a...),
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