[openstack-dev] [packaging] liberty doesn't have caps on deps
Matthew Thode
prometheanfire at gentoo.org
Thu Oct 15 22:21:23 UTC 2015
On 10/15/2015 05:12 PM, Robert Collins wrote:
> On 16 October 2015 at 08:10, Matthew Thode <prometheanfire at gentoo.org> wrote:
>> On 10/15/2015 02:04 PM, Robert Collins wrote:
> ...
>>>> Where are my caps?
>>>
>>> The known good versions of dependencies for liberty are
>>> http://git.openstack.org/cgit/openstack/requirements/tree/upper-constraints.txt?h=stable/liberty
>>>
>> That's good, does that represent an upper constraint for the lower
>> constraint imposed by by the package? Why is this kept separate?
>> Keeping it separate means that it's not trivial to merge them with
>> what's in each package's requirements.
>
> It represents *one* known good combination of packages. We know that
> that combination passed CI, and we then do all our tests with it. To
> change it, we run it past CI and only move onto using the new set when
> its passed CI.
>
> If we merged it to each packages requirements, we'd reintroduce the
> deadlock that caused so much grief only 6 months back - I don't see
> any reason, desire, or tolerance for doing that upstream.
>
> Its kept separate because it requires 2N commits to shift known-good
> caps around for N repos using per-repo rules.
>
> With hundreds of repositories, it takes us hundreds of commits in two
> batches - and a round trip time of 2 hours per batch (check + gate) to
> shift *a single* requirement. With hundreds of dependencies, thats an
> intolerable amount of overhead.
>
ya, that is annoying, unfortunately packages don't need to know *ONE*
good combination, they need to know them all, or at least the cap. What
you are basically doing is shifting all of this extra work onto the
packagers, in fact I wouldn't be surprised if they needed to start
vendoring all of openstack in a virtualenv instead of doing actual packages.
My question remains though, if someone pip installs nova liberty, will
it pull in deps from mitaka? As it is now, without caps I cannot
reliably package openstack, do you have a solution? I should probably
start removing the liberty packages I did package since upstream seems
so hostile...
>>> You should be able to trivially pull those versions out and into your
>>> liberty set of packages.
>>>
>>> Theres another iteration on this in discussion now, which has to do
>>> with backwards compat *and testing of cap changes*, we'll be in the
>>> backwards compat fishbowl session in Tokyo if you're interested.
>>>
>>> -Rob
>>>
>>
>> I'll be at the fishbowl :D
>
> Great!
>
> -Rob
>
>
--
-- Matthew Thode (prometheanfire)
More information about the OpenStack-dev
mailing list