[devstack][ussuri][keystone] ERROR: Links are not allowed as constraints

Neil Jerram neil at tigera.io
Mon Nov 30 16:42:00 UTC 2020


With devstack pinned to stable/ussuri, on Ubuntu Bionic, stack.sh fails for
me when it gets to the step of installing keystone:

...
+ lib/keystone:install_keystone:500        :   setup_develop
/opt/stack/keystone
+ inc/python:setup_develop:351             :   local bindep
+ inc/python:setup_develop:352             :   [[ /opt/stack/keystone ==
-bindep* ]]
+ inc/python:setup_develop:356             :   local
project_dir=/opt/stack/keystone
+ inc/python:setup_develop:357             :   local extras=
+ inc/python:setup_develop:358             :
_setup_package_with_constraints_edit /opt/stack/keystone -e
+ inc/python:_setup_package_with_constraints_edit:377 :   local bindep
+ inc/python:_setup_package_with_constraints_edit:378 :   [[
/opt/stack/keystone == -bindep* ]]
+ inc/python:_setup_package_with_constraints_edit:382 :   local
project_dir=/opt/stack/keystone
+ inc/python:_setup_package_with_constraints_edit:383 :   local flags=-e
+ inc/python:_setup_package_with_constraints_edit:384 :   local extras=
++ inc/python:_setup_package_with_constraints_edit:391 :   cd
/opt/stack/keystone
++ inc/python:_setup_package_with_constraints_edit:391 :   pwd
+ inc/python:_setup_package_with_constraints_edit:391 :
project_dir=/opt/stack/keystone
+ inc/python:_setup_package_with_constraints_edit:393 :   '[' -n
/opt/stack/requirements ']'
+ inc/python:_setup_package_with_constraints_edit:395 :   local name
++ inc/python:_setup_package_with_constraints_edit:396 :   awk '/^name.*=/
{print $3}' /opt/stack/keystone/setup.cfg
+ inc/python:_setup_package_with_constraints_edit:396 :   name=keystone
+ inc/python:_setup_package_with_constraints_edit:398 :
/opt/stack/requirements/.venv/bin/edit-constraints
/opt/stack/requirements/upper-constraints.txt -- keystone '-e
file:///opt/stack/keystone#egg=keystone'
+ inc/python:_setup_package_with_constraints_edit:402 :   setup_package
/opt/stack/keystone -e
+ inc/python:setup_package:430             :   local bindep=0
+ inc/python:setup_package:431             :   local bindep_flag=
+ inc/python:setup_package:432             :   local bindep_profiles=
+ inc/python:setup_package:433             :   [[ /opt/stack/keystone ==
-bindep* ]]
+ inc/python:setup_package:438             :   local
project_dir=/opt/stack/keystone
+ inc/python:setup_package:439             :   local flags=-e
+ inc/python:setup_package:440             :   local extras=
+ inc/python:setup_package:444             :   [[ -n -e ]]
+ inc/python:setup_package:444             :   [[ -z '' ]]
+ inc/python:setup_package:444             :   [[ ! -e =~ ^-.* ]]
+ inc/python:setup_package:449             :   [[ ! -z '' ]]
+ inc/python:setup_package:454             :   [[ 0 == 1 ]]
+ inc/python:setup_package:458             :   pip_install -e
/opt/stack/keystone
Using python 3.6 to install /opt/stack/keystone because python3_enabled=True
+ inc/python:pip_install:200               :   sudo -H LC_ALL=en_US.UTF-8
SETUPTOOLS_USE_DISTUTILS=stdlib http_proxy= https_proxy= no_proxy=
PIP_FIND_LINKS= SETUPTOOLS_SYS_PATH_TECHNIQUE=rewrite /usr/local/bin/pip3.6
install -c /opt/stack/requirements/upper-constraints.txt -e
/opt/stack/keystone
WARNING: The directory '/home/semaphore/.pip_download_cache' or its parent
directory is not owned or is not writable by the current user. The cache
has been disabled. Check the permissions and owner of that directory. If
executing pip with sudo, you may want sudo's -H flag.
DEPRECATION: Constraints are only allowed to take the form of a package
name and a version specifier. Other forms were originally permitted as an
accident of the implementation, but were undocumented. The new
implementation of the resolver no longer supports these forms. A possible
replacement is replacing the constraint with a requirement.. You can find
discussion regarding this at https://github.com/pypa/pip/issues/8210.
ERROR: Links are not allowed as constraints

As far as I can work out, it's because install_keystone
edits /opt/stack/requirements/upper-constraints.txt so that the line for
keystone has "-e file:///opt/stack/keystone#egg=keystone", and pip then
complains that file:// constraints are not supported.

I'm sure there's a good reason but - as is often the case - I'm left
wondering why this isn't broken for everyone!

Any clues or suggestions gratefully received.

     Neil
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-discuss/attachments/20201130/8a9ef64c/attachment-0001.html>


More information about the openstack-discuss mailing list