<div dir="ltr">+1. I had setup a CI for a third-party plugin and the easiest thing to do to make sure it was running tests with the latest copy of the corresponding neutron branch was to put the git URL in requirements.txt. <div><br></div><div>We wanted to always test the latest code so we had early detection of failures. What's the appropriate way to do that without using a git reference?</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jun 4, 2015 at 2:06 AM, Ihar Hrachyshka <span dir="ltr"><<a href="mailto:ihrachys@redhat.com" target="_blank">ihrachys@redhat.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">-----BEGIN PGP SIGNED MESSAGE-----<br>
Hash: SHA256<br>
<span class=""><br>
On 06/03/2015 11:08 PM, Robert Collins wrote:<br>
</span><div><div class="h5">> Hi, right now there is a little used (e.g. its not in any active<br>
> project these days) previous feature of pbr/global-requirements:<br>
> we supported things that setuptools does not: to whit, tarball and<br>
> git requirements.<br>
><br>
> Now, these things are supported by pip, so the implementation<br>
> involved recursing into pip from our setup.py (setup.py -> pbr -><br>
> pip). What we exported into setuptools was only the metadata about<br>
> the dependency name. This meant that we were re-entering pip,<br>
> potentially many times - it was, to be blunt, awful.<br>
><br>
> Fortunately we removed the recursive re-entry into pip in pbr 1.0.<br>
> This didn't remove the ability to parse requirements.txt files<br>
> that contain urls, but it does mean they are converted to the<br>
> simple dependency name when doing 'pip install .' in a project tree<br>
> (or pip install $projectname), and so they are effectively<br>
> unversioned - no lower and no upper bound. This works poorly in the<br>
> gate: please don't use tarball or git urls in requirements.txt (or<br>
> setup.cfg for that matter).<br>
><br>
> We can still choose to use something from git or a tarball in test<br>
> jobs, *if* thats the right thing (which it rarely is: I'm just<br>
> being clear that the technical capability still exists)... but it<br>
> needs to be done outside of requirements.txt going forward. Its<br>
> also something that we can support with the new constraints system<br>
> if desired [which will operate globally once in place (it is an<br>
> extension of global-requirements)].<br>
><br>
> One question that this raises, and this is why I wrote the email:<br>
> is there any need to support this at all:- can we say that we won't<br>
> use tarball/vcs support at all and block it as a policy step in<br>
> global requirements? AIUI both git and tarball support is<br>
> problematic for CI jobs due to the increased flakiness of depending<br>
> on network resources... so its actively harmful anyway.<br>
><br>
<br>
</div></div>Lots of Neutron modules, like advanced services, or out-of-tree<br>
plugins, rely on neutron code being checked out from git [1]. I don't<br>
say it's the way to go forward, and there were plans to stop relying<br>
on latest git to avoid frequent breakages, but it's not yet implemented.<br>
<br>
[1]:<br>
<a href="http://git.openstack.org/cgit/openstack/neutron-vpnaas/tree/tox.ini#n10" target="_blank">http://git.openstack.org/cgit/openstack/neutron-vpnaas/tree/tox.ini#n10</a><br>
<br>
Ihar<br>
-----BEGIN PGP SIGNATURE-----<br>
Version: GnuPG v2<br>
<br>
iQEcBAEBCAAGBQJVcBUnAAoJEC5aWaUY1u57N2EH/jUFd0H9pQ7LApSAIlDTEl2v<br>
WR1EXnc9Vxf5nCWq/qmncj3OCpMDlgL/ZMrFu74LRTDbe38+16kh+Fb+FvBEPGA4<br>
ZkQC3gyg22Se/QcerTxdPil16hnT912Hr3E0cTuu/4ktyipPrVsO39N56Jbrb6WQ<br>
SRCrEohIg7C3c0NgFcvBGh+S4rNf8IKT1oLzKrRhSLzIE8lSeGa1GNnSXPAXk19/<br>
2KIEnqBz3Q5J6umTprB5DFdxMe93Pj6jZmGIMFaHXYgG/yTdKz3zzGM3hpuLyGUQ<br>
kKYEzFJZ4vf2c6NBg//GYTcAkGjkM2QmAnS+uoztU5vm4QRkLgGcDCz29eQ5ufA=<br>
=6bUu<br>
-----END PGP SIGNATURE-----<br>
<div class="HOEnZb"><div class="h5"><br>
__________________________________________________________________________<br>
OpenStack Development Mailing List (not for usage questions)<br>
Unsubscribe: <a href="http://OpenStack-dev-request@lists.openstack.org?subject:unsubscribe" target="_blank">OpenStack-dev-request@lists.openstack.org?subject:unsubscribe</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div>Kevin Benton</div></div>
</div>