Devstack stack fails running Py36 on Ubuntu20
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
devstack |
Opinion
|
Wishlist
|
Unassigned |
Bug Description
Stacking DevStack on Master targeting py36 in local.conf instead of the distro version py38 (ubuntu 20.04.1) results in failures from Keystone:
INFO keystone.
INFO keystone.
INFO keystone.
+./stack.
+lib/keystone:
++lib/keystone:
Failed to discover available identity versions when contacting http://
Could not find versioned identity endpoints when attempting to authenticate. Please check that your auth_url is correct. Internal Server Error (HTTP 500)
++functions-
+lib/keystone:
+lib/keystone:
+./stack.
++./stack.
+./stack.
+./stack.
+./stack.
+./stack.
+./stack.
+./stack.
+./stack.
+./stack.
Error on exit
+./stack.
+./stack.
+./stack.
+./stack.
+./stack.
Running the oscwrap command in isolation:
stack@test:
Failed to discover available identity versions when contacting http://
Could not find versioned identity endpoints when attempting to authenticate. Please check that your auth_url is correct. Internal Server Error (HTTP 500)
-bash: $OSCWRAP_
If we have a look at the Keystone logs we can see the following log message:
Sep 01 12:35:57 test <email address hidden>[80544]: Python version: 3.8.2 (default, Jul 16 2020, 14:00:26) [GCC 9.3.0]
Which results in a ModuleNotFoundError exception later because we have specified keystone to be installed in Python36:
Sep 01 12:35:57 test <email address hidden>[80546]: Traceback (most recent call last):
Sep 01 12:35:57 test <email address hidden>[80546]: File "/usr/local/
Sep 01 12:35:57 test <email address hidden>[80546]: from keystone.
Sep 01 12:35:57 test <email address hidden>[80546]: ModuleNotFoundE
Sep 01 12:35:57 test <email address hidden>[80546]: unable to load app 0 (mountpoint='') (callable not found or import error)
Checking plugin INI configuration from /etc/keystone/
plugins = http,python3
And if we go looking at the uwsgi plugins python3 is just a symlink to python3.8:
stack@test:
196 -rw-r--r-- 1 root root 199896 Apr 11 12:15 python38_plugin.so
0 lrwxrwxrwx 1 root root 38 Sep 1 11:46 python3_plugin.so -> /etc/alternativ
stack@test:
0 lrwxrwxrwx 1 root root 41 Sep 1 11:46 /etc/alternativ
For additional versions of Python to work on Ubuntu 20 there needs to be allowances for versions other than Python 3.8. It is possible to do this with uwsgi but not with the build included with DevStack:
PYTHON=python3.4 ./uwsgi --build-plugin "plugins/python python34"
PYTHON=python2.7 ./uwsgi --build-plugin "plugins/python python27"
PYTHON=python2.6 ./uwsgi --build-plugin "plugins/python python26"
description: | updated |
description: | updated |
Why do you want to install an outdated python version? And how do you do it? As far as I can see, Focal at best has python3.7. The upstream tests for py36 are being run on Bionic, would that be an option for you?