Project

General

Profile

Actions

Bug #45899

open

mgr/dashboard: Running the backend-api-tests based on octopus results in an error: "Encountered a version of Setuptools that no longer supports this version of Python."

Added by Laura Paduano almost 4 years ago. Updated about 3 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Testing & QA
Target version:
-
% Done:

0%

Source:
Q/A
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

When running the "run-backend-api-tests.sh" locally (on openSUSE Leap 15.2) it results in the following error:

  Using cached pytz-2020.1-py2.py3-none-any.whl (510 kB)
Installing collected packages: pytz, six, more-itertools, jaraco.functools, tempora, portend, cheroot, CherryPy, enum34, PyJWT, pyopenssl, bcrypt, defusedxml, lxml, xmlsec, isodate, python3-saml, urllib3, idna, requests, repoze.lru, Routes, ceph
  Attempting uninstall: six
    Found existing installation: six 1.15.0
    Uninstalling six-1.15.0:
      Successfully uninstalled six-1.15.0
  Attempting uninstall: more-itertools
    Found existing installation: more-itertools 5.0.0
    Uninstalling more-itertools-5.0.0:
      Successfully uninstalled more-itertools-5.0.0
  Attempting uninstall: enum34
    Found existing installation: enum34 1.1.10
    Uninstalling enum34-1.1.10:
      Successfully uninstalled enum34-1.1.10
  Attempting uninstall: PyJWT
    Found existing installation: PyJWT 1.7.1
    Uninstalling PyJWT-1.7.1:
      Successfully uninstalled PyJWT-1.7.1
  Attempting uninstall: bcrypt
    Found existing installation: bcrypt 3.1.7
    Uninstalling bcrypt-3.1.7:
      Successfully uninstalled bcrypt-3.1.7
  Attempting uninstall: urllib3
    Found existing installation: urllib3 1.25.9
    Uninstalling urllib3-1.25.9:
      Successfully uninstalled urllib3-1.25.9
  Attempting uninstall: idna
    Found existing installation: idna 2.9
    Uninstalling idna-2.9:
      Successfully uninstalled idna-2.9
  Attempting uninstall: requests
    Found existing installation: requests 2.23.0
    Uninstalling requests-2.23.0:
      Successfully uninstalled requests-2.23.0
  Running setup.py develop for ceph
Successfully installed CherryPy-13.1.0 PyJWT-1.6.4 Routes-2.4.1 bcrypt-3.1.4 ceph cheroot-8.3.0 defusedxml-0.5.0 enum34-1.1.6 idna-2.7 isodate-0.6.0 jaraco.functools-2.0 lxml-4.5.1 more-itertools-4.1.0 portend-2.6 pyopenssl-17.5.0 python3-saml-1.4.1 pytz-2020.1 repoze.lru-0.7 requests-2.20.0 six-1.14.0 tempora-1.14.1 urllib3-1.24.3 xmlsec-1.3.8
/tmp/tmp.PDVqtiA643
Already using interpreter /usr/bin/python3
Using base prefix '/usr'
New python executable in /tmp/tmp.PDVqtiA643/coverage-venv/bin/python3
Also creating executable in /tmp/tmp.PDVqtiA643/coverage-venv/bin/python
Installing setuptools, pip, wheel...
done.
Collecting coverage==4.5.2
  Using cached coverage-4.5.2-cp36-cp36m-manylinux1_x86_64.whl (205 kB)
Installing collected packages: coverage
Successfully installed coverage-4.5.2
/tmp/tmp.PDVqtiA643/coverage-venv/lib64/python3.6/site-packages/pkg_resources/py2_warn.py:15: UserWarning: Setuptools no longer works on Python 2
************************************************************
Encountered a version of Setuptools that no longer supports
this version of Python. Please head to
https://bit.ly/setuptools-py2-sunset for support.
************************************************************
  warnings.warn(pre + "*" * 60 + msg + "*" * 60) 

While the octopus nightly job https://jenkins.ceph.com/view/mgr-dashboard/job/ceph-api-nightly-octopus-backend/ (running on Ubuntu bionic) is not affected by this, I'm not sure if this is only a local (OS?) issue.
At least Kiefer and I are facing the same issue when running the tests locally.

Actions #1

Updated by Kiefer Chang almost 4 years ago

There are some py2->py3 fixes in master.
A potential one is https://github.com/ceph/ceph/pull/34636. But it's not straightforward to backport it since it depends on some PRs (which are not backported either).

One strange thing I don't get it is why the test succeeds in jenkins.

Actions #2

Updated by Kiefer Chang almost 4 years ago

The test can be run in Jenkins because virtualenv in jenkins env is the newer (20.0.21).
In my dev container, the virtualenv version is still 16.1.0.
The newer version seems to do more for py3 venv when configuring pkg_resources (not failing if py2 is detected)

Newer versions of virtualenv are not available for openSUSE leap 15.1 or 15.2 yet.
A temporary workaround is to use pip to upgrade the virtualenv inside the container (note, this override what rpm provides):

pip install virtualenv --upgrade

Or use factory repo to upgrade. I can run test with virtualenv 20.0.21.

I think the true fix is to backport those py2->py3 fixes from master.

Actions #3

Updated by Ernesto Puerta about 3 years ago

  • Project changed from mgr to Dashboard
  • Category changed from 151 to Testing & QA
Actions

Also available in: Atom PDF