[openstack-dev] [Fuel][Fuel-Packaging][Fuel-CI][Fuel-Infra] How to Deal with CI Failures Induced by Libraries Requirements Drift

Bartlomiej Piotrowski bpiotrowski at mirantis.com
Mon Jul 13 06:24:35 UTC 2015


Freezing every moving part is complete overkill and puts a heavy burden on
devops
team as well as infra itself. The fix couldn't be more simple: just put
upper
bounds in requirements.

> 1) if there is a new conflicting version, you need to set this
upper-bound, thus you need to modify bits which get released
It should be done as part of hard code freeze.

> 2) you are actually testing your code by linking it with libraries which
are different from those that users are really using when running your code
Packages dependencies should reflect these set in requirements.

> 3) even if you specify an upper bound (or even fix the version) for this
particular library, you may still fetch its newer dependency implicitly (by
traversing indirect dependencies) with which you will be linking your
libraries and which will actually be different from the code that you (and
your users) use
This can be actually said about anything, including base system Fuel is
running. We simply do not support such setups.

> 4) you may also break production installation if you fix some library
version as it may not exist in the code bundle which gets delivered to your
users as a set of package
See 2.

BP
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20150713/25959151/attachment.html>


More information about the OpenStack-dev mailing list