Encountered zuul py27 failure when pushing change to starlingx/fault repo:
https://review.opendev.org/#/c/715769/1
tox -epy27 -c fm-rest-api/fm/tox.ini
non-zero return code
py27 create: /home/zuul/src/opendev.org/starlingx/fault/fm-rest-api/fm/.tox/py27
py27 installdeps: -r/home/zuul/src/opendev.org/starlingx/fault/fm-rest-api/fm/test-requirements.txt, -e/home/zuul/src/opendev.org/starlingx/fault/fm-rest-api/fm/../../..//config/tsconfig/tsconfig, -e/home/zuul/src/opendev.org/starlingx/fault/fm-rest-api/fm/../../..//config/sysinv/cgts-client/cgts-client, -e/home/zuul/src/opendev.org/starlingx/fault/fm-rest-api/fm/../../..//fault/fm-api, -e/home/zuul/src/opendev.org/starlingx/fault/fm-rest-api/fm/../../..//fault/fm-rest-api/fm
py27 installed: DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support,alembic==1.4.2,amqp==2.5.2,appdirs==1.4.3,Babel==2.8.0,backports.functools-lru-cache==1.6.1,bashate==0.6.0,beautifulsoup4==4.8.2,cachetools==3.1.1,certifi==2019.11.28,cffi==1.14.0,-e git+file:///dev/null@16477935845e1c27b4c9d31743e359b0aa94a948#egg=cgtsclient&subdirectory=sysinv/cgts-client/cgts-client,chardet==3.0.4,cliff==2.18.0,cmd2==0.8.9,configparser==4.0.2,contextlib2==0.6.0.post1,cryptography==2.8,Cython==0.29.16,debtcollector==1.22.0,decorator==4.4.2,dnspython==1.16.0,dogpile.cache==0.9.0,entrypoints==0.3,enum34==1.1.10,eventlet==0.25.1,extras==1.0.0,fasteners==0.15,fixtures==3.0.0,flake8==2.5.5,-e git+file:///dev/null@2b0842337832cc49b98ef505026981fe8b498456#egg=fm&subdirectory=fm-rest-api/fm,-e git+file:///dev/null@2b0842337832cc49b98ef505026981fe8b498456#egg=fm_api&subdirectory=fm-api,funcsigs==1.0.2,future==0.18.2,futures==3.3.0,futurist==1.10.0,greenlet==0.4.15,hacking==0.12.0,httplib2==0.17.0,idna==2.9,importlib-metadata==1.6.0,ipaddress==1.0.23,iso8601==0.1.12,Jinja2==2.11.1,jmespath==0.9.5,jsonpatch==1.25,jsonpointer==2.0,keyring==18.0.1,keystoneauth1==3.18.0,keystonemiddleware==8.0.0,kombu==4.6.8,linecache2==1.0.0,logutils==0.3.5,Mako==1.1.2,MarkupSafe==1.1.1,mccabe==0.2.1,mock==3.0.5,monotonic==1.5,msgpack==1.0.0,munch==2.5.0,netaddr==0.7.19,netifaces==0.10.9,openstacksdk==0.45.0,os-client-config==2.0.0,os-service-types==1.7.0,osc-lib==2.0.0,oslo.cache==1.38.1,oslo.concurrency==3.31.0,oslo.config==7.0.0,oslo.context==2.23.0,oslo.db==6.0.0,oslo.i18n==3.25.1,oslo.log==3.45.2,oslo.messaging==10.5.0,oslo.middleware==3.38.1,oslo.policy==2.4.1,oslo.serialization==2.29.2,oslo.service==1.41.1,oslo.utils==3.42.1,oslo.versionedobjects==1.37.0,Paste==3.4.0,PasteDeploy==2.1.0,pathlib2==2.3.5,pathspec==0.7.0,pbr==5.4.4,pecan==1.3.3,pep8==1.5.7,prettytable==0.7.2,pycadf==2.10.0,pycparser==2.20,pyflakes==0.8.1,pyinotify==0.9.6,pyparsing==2.4.6,pyperclip==1.8.0,python-dateutil==2.8.1,python-editor==1.0.4,python-keystoneclient==3.22.0,python-mimeparse==1.6.0,python-neutronclient==7.1.0,python-subunit==1.4.0,pytz==2019.3,PyYAML==5.3.1,repoze.lru==0.7,requests==2.23.0,requestsexceptions==1.4.0,rfc3986==1.3.2,Routes==2.4.1,scandir==1.10.0,SecretStorage==2.3.1,simplegeneric==0.8.1,simplejson==3.17.0,singledispatch==3.4.0.3,six==1.14.0,soupsieve==1.9.5,SQLAlchemy==1.3.15,sqlalchemy-migrate==0.13.0,sqlparse==0.3.1,statsd==3.3.0,stestr==3.0.0,stevedore==1.32.0,subprocess32==3.5.4,Tempita==0.5.2,testresources==2.0.1,testscenarios==0.5.0,testtools==2.4.0,traceback2==1.4.0,-e git+file:///dev/null@16477935845e1c27b4c9d31743e359b0aa94a948#egg=tsconfig&subdirectory=tsconfig/tsconfig,unicodecsv==0.14.1,unittest2==1.1.0,urllib3==1.25.8,vine==1.3.0,voluptuous==0.11.7,waitress==1.4.3,wcwidth==0.1.9,WebOb==1.8.6,WebTest==2.0.34,wrapt==1.12.1,WSME==0.9.3,yamllint==1.21.0,yappi==1.2.3,zipp==1.2.0
py27 run-test-pre: PYTHONHASHSEED='4016148929'
py27 run-test: commands[0] | stestr run
Usage: run.py discover [options]
run.py discover: error: no such option: --list
=========================
Failures during discovery
=========================
================================================================================
The above traceback was encountered during test discovery which imports all the found test modules in the specified test_path.
ERROR: InvocationError for command /home/zuul/src/opendev.org/starlingx/fault/fm-rest-api/fm/.tox/py27/bin/stestr run (exited with code 100)
___________________________________ summary ____________________________________
ERROR: py27: commands failed
Appears that a new version of stestr (3.0.0) was release Mar. 26 and does not support py27.
https://pypi.org/project/stestr/#history
https://pypi.org/project/stestr/3.0.0/
stestr v2.x.x release series will be the last series that supports Python 2. Support for Python 2.7 was dropped in stestr release 3.0.0.
We'll need to use an earlier version for py27 tests.
I hit this in starlingx/fault but this may impact other starlingx repos that use py27 and stestr.
Note: many of the starlingX repos use upper constraints from stein, which caps at 2.2.0
https:/ /github. com/openstack/ requirements/ blob/stable/ stein/upper- constraints. txt#L297