Introduce KEEP_OS_PIP_PKG flag

Bug #1806387 reported by Noel McLoughlin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
devstack
Opinion
Wishlist
Unassigned

Bug Description

The tools/install_pip.sh script uninstalls the system pip package (i.e. python-pip).

Could this be optional?

Removing python-pip breaks IT automation where devstack is part of a bigger stack which depend on python modules like docker, compose, etc.

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote :

Devstack isn't meant to be part of a bigger stack, if you need that, please have a look at some other deployment project.

Changed in devstack:
status: New → Invalid
Revision history for this message
Noel McLoughlin (noelmcloughlin) wrote :

Here are two valid reasons-
- The OS provided pip package is supported by OS vendor but PyPi is not.
- Devstack deletes system python pip but does not migrate system python modules - thats data loss.

Changed in devstack:
status: Invalid → New
Revision history for this message
Noel McLoughlin (noelmcloughlin) wrote :

I have changed state to new because its not "spam".

Changed in devstack:
status: New → Opinion
importance: Undecided → Wishlist
Revision history for this message
Noel McLoughlin (noelmcloughlin) wrote :

Right now it sucks devstack has hard dependency on OS vendor-unsupported pip2.7 binary.
Running these commands on production systems is sickening from quality/security perspective.

    $ wget https://bootstrap.pypa.io/get-pip.py
    $ sudo python2.7 get-pip.py

----
2019-08-05 18:26:44.779 | [ERROR] /opt/stack/inc/python:37 Unable to find pip2.7; cannot continue
2019-08-05 18:26:45.787 | ++^[[38;5;242mstack.sh:main:766 ^[(B^[[m err_trap
2019-08-05 18:26:45.792 | ++^[[38;5;242mstack.sh:err_trap:562 ^[(B^[[m local r=1
2019-08-05 18:26:45.797 | stack.sh failed: full log in /tmp/devstack/stack.sh.log.2019-08-05-112633
2019-08-05 18:26:45.798 | Error on exit
2019-08-05 18:26:45.871 | Traceback (most recent call last):
2019-08-05 18:26:45.871 | File "/opt/stack/tools/worlddump.py", line 253, in <module>
2019-08-05 18:26:45.871 | sys.exit(main())
2019-08-05 18:26:45.871 | File "/opt/stack/tools/worlddump.py", line 237, in main
2019-08-05 18:26:45.871 | sys.stdout = os.fdopen(sys.stdout.fileno(), 'w', 0)
2019-08-05 18:26:45.871 | File "/usr/lib/python3.6/os.py", line 1017, in fdopen
2019-08-05 18:26:45.871 | return io.open(fd, *args, **kwargs)
2019-08-05 18:26:45.871 | ValueError: can't have unbuffered text I/O
2019-08-05 18:26:45.871 | Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'>
2019-08-05 18:26:45.871 | OSError: [Errno 9] Bad file descriptor
---

This ticket can be closed if devstack project believes this is okay. I don't!

Revision history for this message
Noel McLoughlin (noelmcloughlin) wrote :

py-pip must indeed be hard dependency. Why not python-pip and python3-pip?
---
2019-08-05 19:02:23.140 | Found existing installation: PyYAML 3.12
2019-08-05 19:02:23.149 | ERROR: Cannot uninstall 'PyYAML'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.
---

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.