browbeat dependencies conflict with its consumers

Bug #1799690 reported by Sorin Sbarnea
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
openstack-browbeat
Fix Released
Undecided
Aakarsh
tripleo-quickstart
New
Undecided
Unassigned

Bug Description

As of today browbeat declared dependencies to pin ansible to an ancient version, also pinning few other dependencies without clear reasons for doing so.

This create dependency conflict with other openstack project that do use browbeat, like tripleo-quickstart which already requires an ansible version newer.

browbeat dependencies should use open ranges that require minimal known to work version and optionally ceiling maximum version but only when it is known that the newer version will broke
the product.

Example:

ansible>=2.4.1,<2.8.0
python-dateutil>=2.4.2

This would declare the fact that we know not to be working with 2.8.0 because of some changes made there.

For the specific case where a new minor release of a dependency breaks browbeat, we can use `fooo>=1.0.0,!=1.1.0` if we are aware that the breakage is going to be fixed in the incoming release of the culprit.

Also, to prevent introducing conflicts due to wrong dependency declaration, we need to run "pip check" after installing depencies.

`pip check` report conflicts and return non-zero error code if any conflict is found.

Related to tripleo-quickstart https://tree.taiga.io/project/tripleo-ci-board/issue/253

Sorin Sbarnea (ssbarnea)
affects: openstack-browbeat → tripleo-quickstart
affects: tripleo-quickstart → openstack-browbeat
description: updated
Aakarsh (agopi)
Changed in openstack-browbeat:
assignee: nobody → Aakarsh (agopi)
Revision history for this message
Aakarsh (agopi) wrote :

https://review.openstack.org/#/c/613588/ fixed the dependency issues, and https://review.openstack.org/#/c/616677 will ensure that installing tripleo-quickstart would not pull in numpy, which is now an extra as it's only used for CLI cases to compare results.

Changed in openstack-browbeat:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to browbeat (master)

Reviewed: https://review.openstack.org/616677
Committed: https://git.openstack.org/cgit/openstack/browbeat/commit/?id=03be4251029281228f92d355bdb146be3d9ae048
Submitter: Zuul
Branch: master

commit 03be4251029281228f92d355bdb146be3d9ae048
Author: agopi <email address hidden>
Date: Thu Nov 8 14:30:44 2018 -0500

    Add numpy to extras

    Move numpy out of requirements into extras, as it's not required
    for running browbeat, but only used for insights like compare
    results.

    So to install with insights, pip install .[insights], to perform
    the CLI operations such as compare.

    Added a tox test to ensure no dep conflict arises.

    Change-Id: Id8aafcd479003ae79ab8c2d0f1fa378ea38d60d2
    Closes-Bug: #1799690

Changed in openstack-browbeat:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.