[openstack-dev] [DevStack] Python dependencies: PyPI vs distro packages

Joshua Harlow harlowja at yahoo-inc.com
Thu Aug 8 17:52:45 UTC 2013

Just an idea how this could go (without saying just use anvil).

Taking from how anvil is doing it the following might work:

1. In devstack pass all the requirement files to multipip to get a unified
list back.
2. Use yumfind (maybe a similar utility that integrates with apt-get/apt
also?) to scan the repos for the given python requirements in the unified
3. For ones that are matched, install them, for ones that aren't, use the
py2rpm (another similar tool for 'debs' needed here) tool to build them,
then install the build rpms.
4. Now `python setup.py install` all the openstack components packages (no
need for a venv at this point, but it probably doesn't hurt?).
   a. Due to the previous steps all components dependencies should already
be installed so everything should proceed correctly.
5. Profit.

On 8/8/13 9:52 AM, "Dean Troyer" <dtroyer at gmail.com> wrote:

>On Thu, Aug 8, 2013 at 11:34 AM, Monty Taylor <mordred at inaugust.com>
>> I'd be more happy about depending on RDO - we already said that we're ok
>> with depending on Ubuntu Cloud Archive for Ubuntu flavors. Basically, I
>> don't want devstack to depend on repos that we don't think is reasonable
>> to tell end users who are going to deploy to actually depend on - but I
>> think UCA an RDO are reasonable to tell people they'll need if they want
>> to install from packages on those platforms.
>DevStack already does depend on both EPEL and RDO just to run on
>RHEL6.  The problem is keeping up with trunk we still have to handle
>the situation where requirements.txt specifies a min-version that is
>not in either repo yet.  So we still have to solve the problem or hold
>up bumping versions on downstream packaging.
>Dean Troyer
>dtroyer at gmail.com
>OpenStack-dev mailing list
>OpenStack-dev at lists.openstack.org

More information about the OpenStack-dev mailing list