-
Type: Task
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Tests
-
Labels:None
mongo-orchestration fails to start on Archlinux:
From shell Fri Nov 29 22:38:09 UTC 2019 2019-11-29 22:38:23,193 [INFO] mongo_orchestration.daemon:130 - Starting daemon 2019-11-29 22:38:23,193 [INFO] mongo_orchestration.daemon:76 - daemonize_posix 2019-11-29 22:38:23,194 [DEBUG] mongo_orchestration.daemon:80 - forked first child, pid = 3077 2019-11-29 22:38:23,195 [DEBUG] mongo_orchestration.daemon:82 - in child after first fork, pid = 0 2019-11-29 22:38:23,196 [DEBUG] mongo_orchestration.daemon:98 - forked second child, pid = 3078, exiting 2019-11-29 22:38:23,196 [INFO] mongo_orchestration.daemon:106 - daemonized, pid = 0 2019-11-29 22:38:23,197 [DEBUG] mongo_orchestration.server:130 - Starting HTTP server on host: 127.0.0.1; port: 8889 2019-11-29 22:38:23,325 [ERROR] mongo_orchestration.server:137 - Could not start a new server. Traceback (most recent call last): File "/data/mci/28cb5fb34a3229104dcc3222414d1568/drivers-tools/.evergreen/orchestration/venv/lib/python3.8/site-packages/mongo_orchestration/server.py", line 132, in run run(get_app(), host=self.args.bind, port=self.args.port, File "/data/mci/28cb5fb34a3229104dcc3222414d1568/drivers-tools/.evergreen/orchestration/venv/bin/bottle.py", line 3131, in run server.run(app) File "/data/mci/28cb5fb34a3229104dcc3222414d1568/drivers-tools/.evergreen/orchestration/venv/bin/bottle.py", line 2789, in run from cherrypy import wsgiserver File "/data/mci/28cb5fb34a3229104dcc3222414d1568/drivers-tools/.evergreen/orchestration/venv/lib/python3.8/site-packages/cherrypy/__init__.py", line 64, in <module> from cherrypy._cperror import HTTPError, HTTPRedirect, InternalRedirect File "/data/mci/28cb5fb34a3229104dcc3222414d1568/drivers-tools/.evergreen/orchestration/venv/lib/python3.8/site-packages/cherrypy/_cperror.py", line 118, in <module> from cgi import escape as _escape ImportError: cannot import name 'escape' from 'cgi' (/usr/lib64/python3.8/cgi.py)
It looks like the problem is that "python" points to Python 3.8 on Archlinux and mongo-orchestration does not support Python 3.8 yet. More accurately, the version of CherryPy that MO requires does not support Python 3.8.
In BUILD-1873 we capped the cherrypy dependency to 7.0 because of a windows install issue.
To fix this issue, we can:
- remove the cherrypy<7.0 requirement from mongo-orchestration and add Python 3.8 support to mongo-orchestration. We may need to coordinate with the build team if BUILD-1873 is still an issue on Windows.
- See if we can use an older Python version when installing MO on Archlinux