On 08/10/2016 04:51 AM, Erno Kuvaja wrote:
On Wed, Aug 10, 2016 at 9:27 AM, Thomas Goirand <z...@debian.org> wrote:

Not necessarily. Take for example Swift. It has lower requirements than
other projects in OpenStack. Yet, Swift is fully co-installable with all
other OpenStack projects. They just support lower versions than others.

This just makes lifecycle management total nightmare if different
project has different requirements within same release. Lets say we
have these projects Swift, X and Y that supports the lower versions,
now we decide to deploy Z to that same cloud but Z has higher
requirement than Swift, X and Y, so we need to upgrade that
requirement at minimum to that new level required by Z.

Having 3 options here:
1) We upgrade the requirement to the new level system wide and restart
Swift, X and Y to avoid any nasty surprises later down the line, which
is risky and disruptive by itself.
2) We containerize/use venv for Z and provide the new version of the
dependency just for that.
3) We deploy Z to it's own node.

As Doug Hellman said earlier in the thread, they recommend to deployers/packages that they use the *highest* supported version as listed in upper-constraints.txt.

In the case above, if the deployer had done this then bringing in Z would likely not have resulted in a need to upgrade any requirements.

Chris

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to