[openstack-dev] Moving forward with openstack/requirements

Doug Hellmann doug.hellmann at dreamhost.com
Mon Jan 14 16:07:34 UTC 2013

On Sat, Jan 12, 2013 at 10:30 PM, Monty Taylor <mordred at inaugust.com> wrote:

> Hey all!
> Once again, we've kind of stalled out on our two-summit old project of
> common requirements across the projects. The initial repo is up at
> http://github.com/openstack/requirements but I think not much happens
> with it because working on it doesn't really get you anything right now.
> So I've got an idea for steps to move forward.
> Step 0: Re-sync the contents of the files with the new state of reality
> Step 1: Drive updates to the OpenStack PyPI mirror from the requirements
> repo
> Step 2: Configure the Jenkins slaves to only talk to the PyPI mirror for
> pip
> Step 3: Add a step to the pypi mirror creation that pulls packages fresh
> from requirements into a new proposed state of the PyPI mirror, then
> tests all of the projects against that mirror and only promotes new
> packages into if those tests pass.

It could also use a pip/tox cache directory for those tests to avoid
complicating the PyPI setup.

> That's it. Done.
> If we do through step 2, it means that before someone can add a new
> requirement to a project, it would have to go into
> openstack/requirements. If we do step 3, it'll trap for things like the
> sqlalchemy 0.8 upgrade issue. It also, as an approach, doesn't enforce
> that projects have to upgrade at any point, because previous versions of
> things will still be in our mirror (we don't purge it)

This improves the situation, but doesn't quite solve the problem of rolling
out updates to packages where we are pegged to a specific version (see the
recent thread on WebOb). Step 3 is really important for being able to
switch from == versioning to the more flexible >= versioning.

> Also - while you're all thinking about it - I've been considering
> getting the code we have in oslo-incubator setup that makes setup.py
> understand pip-requires and test-requires automatically upstreamed
> (seems like a thing we're not the only ones who would want it) The catch
> - those aren't the filenames most people use for those files. SO - what
> if we (and by we, I mean I, and by I, I mean a shell script that submits
> a bajillion reviews) renamed tools/pip-requires to requirements.txt and
> tools/test-requires to test-requirements.txt? I've already updated our
> mirror creation code to recognize both files. If people are cool with
> that, I can then work on trying to get a patch into distribute that
> would allow for that - which would mean less copied code for us.



> Thoughts welcome...
> Monty
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20130114/c5851543/attachment.html>

More information about the OpenStack-dev mailing list