Plugin installation blindly upgrading deps

Bug #1526397 reported by Christopher Powell
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenCafe
New
Undecided
Unassigned

Bug Description

When installing opencafe plugins, the EnginePluginManager executes a 'pip install --upgrade'. This has the unfortunate side effect of recursively and blindly upgrading all python packages, even if the dependency requirements have already been met. It should execute an 'only-if-needed' upgrade.

https://github.com/openstack/opencafe/blob/master/cafe/configurator/managers.py#L655
https://pip.pypa.io/en/stable/user_guide/#only-if-needed-recursive-upgrade

How to reproduce, installing opencafe with the http plugin will break docker-compose (requests<2.8,>=2.6.1).

(venv)root@server:/root# pip install docker-compose

(venv)root@server:/root# pip freeze
backports.ssl-match-hostname==3.4.0.2
docker-compose==1.5.2
docker-py==1.6.0
dockerpty==0.3.4
docopt==0.6.2
enum34==1.1.1
functools32==3.2.3.post2
jsonschema==2.5.1
PyYAML==3.11
requests==2.7.0
six==1.10.0
texttable==0.8.4
websocket-client==0.34.0

(venv)root@server:/root# pip install opencafe

(venv)root@server:/root# cafe-config plugins install http

(venv)root@server:/root# pip freeze
backports.ssl-match-hostname==3.4.0.2
cafe-http-plugin==0.0.1
docker-compose==1.5.2
docker-py==1.6.0
dockerpty==0.3.4
docopt==0.6.2
enum34==1.1.1
functools32==3.2.3.post2
jsonschema==2.5.1
opencafe==0.2.4
PyYAML==3.11
requests==2.9.0
six==1.10.0
texttable==0.8.4
websocket-client==0.34.0

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.