Project

General

Profile

Bug #59591

setup-venv-for-mgr: make check fails from "ERROR: Cannot install -r requirements.txt (line 3) and kubernetes because these package versions have conflicting dependencies."

Added by Laura Flores 10 months ago. Updated 10 months ago.

Status:
Pending Backport
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

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

Description

Example build: https://jenkins.ceph.com/job/ceph-pull-requests/114520/consoleFull#806950606e2f9bd1b-f570-4eac-a6c0-0080730e3135

202/284 Test   #2: setup-venv-for-mgr ........................***Failed   32.58 sec
Python 3.10.6 (main, Aug 10 2022, 11:40:04) [GCC 11.3.0]
Requirement already satisfied: pip>=6.1 in /home/jenkins-build/build/workspace/ceph-pull-requests/build/mgr-virtualenv/lib/python3.10/site-packages (22.0.2)


Related issues

Related to mgr - Cleanup #48210: should unpin urllib3 when requests is compatible with urllib3 1.26 Resolved
Related to Infrastructure - Bug #59652: Builds failing from "ImportError: cannot import name 'appengine' from 'requests.packages.urllib3.contrib'" Resolved
Copied to mgr - Backport #59600: reef: setup-venv-for-mgr: make check fails from "ERROR: Cannot install -r requirements.txt (line 3) and kubernetes because these package versions have conflicting dependencies." Resolved
Copied to mgr - Backport #59625: quincy: setup-venv-for-mgr: make check fails from "ERROR: Cannot install -r requirements.txt (line 3) and kubernetes because these package versions have conflicting dependencies." Resolved

History

#1 Updated by Laura Flores 10 months ago

This is actually the full cause of failure:

202/284 Test   #2: setup-venv-for-mgr ........................***Failed   32.58 sec
Python 3.10.6 (main, Aug 10 2022, 11:40:04) [GCC 11.3.0]
Requirement already satisfied: pip>=6.1 in /home/jenkins-build/build/workspace/ceph-pull-requests/build/mgr-virtualenv/lib/python3.10/site-packages (22.0.2)
Collecting pip>=6.1
  Using cached pip-23.1.2-py3-none-any.whl (2.1 MB)
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 22.0.2
    Uninstalling pip-22.0.2:
      Successfully uninstalled pip-22.0.2
Successfully installed pip-23.1.2
...
Processing ./wheelhouse/exceptiongroup-1.1.1-py3-none-any.whl (from pytest>=3.6->pytest-cov==2.7.1->-r requirements-required.txt (line 11))
Requirement already satisfied: tomli>=1.0.0 in /home/jenkins-build/build/workspace/ceph-pull-requests/build/mgr-virtualenv/lib/python3.10/site-packages (from pytest>=3.6->pytest-cov==2.7.1->-r requirements-required.txt (line 11)) (2.0.1)
Processing ./wheelhouse/charset_normalizer-3.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (from requests->kubernetes==11.0.0->-r requirements.txt (line 3))
Processing ./wheelhouse/idna-3.4-py3-none-any.whl (from requests->kubernetes==11.0.0->-r requirements.txt (line 3))
INFO: pip is looking at multiple versions of requests to determine which version is compatible with other requirements. This could take a while.
ERROR: Cannot install -r requirements.txt (line 3) and kubernetes because these package versions have conflicting dependencies.

The conflict is caused by:
    kubernetes 11.0.0 depends on urllib3>=1.24.2
    requests 2.29.0 depends on urllib3<1.27 and >=1.21.1

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict

ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts

        Start   4: run-tox-mgr
Failed test dependencies: setup-venv-for-mgr

#2 Updated by Laura Flores 10 months ago

  • Subject changed from setup-venv-for-mgr: make check fails from "Requirement already satisfied: pip>=6.1" to setup-venv-for-mgr: make check fails from "ERROR: Cannot install -r requirements.txt (line 3) and kubernetes because these package versions have conflicting dependencies."

#3 Updated by Laura Flores 10 months ago

Pretty sure this is where the problem is coming from: https://github.com/ceph/ceph/blob/362a9d8e899807b52e2e1bbb53d4c178fb1490d4/src/pybind/mgr/requirements.txt#L3

-rrequirements-required.txt
asyncssh==2.9
kubernetes==11.0.0

We are pinning the kubernetes version to 11.0.0.

#4 Updated by Laura Flores 10 months ago

  • Related to Cleanup #48210: should unpin urllib3 when requests is compatible with urllib3 1.26 added

#5 Updated by Laura Flores 10 months ago

Looks like a new version of requests was released about when make check started failing: https://requests.readthedocs.io/en/latest/community/updates/#release-history

#6 Updated by Laura Flores 10 months ago

  • Tags set to test-failure
  • Project changed from Infrastructure to mgr

#7 Updated by Laura Flores 10 months ago

  • Pull request ID set to 51298

Proposed a fix.

#8 Updated by Laura Flores 10 months ago

The fix is a workaround until requests supports a higher version of urllib3. If there are any issues with urllib3 in the future, we should consider unpinning it in src/pybind/mgr/requirements.txt.

#9 Updated by Laura Flores 10 months ago

  • Status changed from New to Resolved

#10 Updated by Casey Bodley 10 months ago

  • Status changed from Resolved to Pending Backport
  • Backport set to reef

i've tagged this for reef backport, because i see it blocking 'make check' on reef PR https://github.com/ceph/ceph/pull/51061

#11 Updated by Backport Bot 10 months ago

  • Copied to Backport #59600: reef: setup-venv-for-mgr: make check fails from "ERROR: Cannot install -r requirements.txt (line 3) and kubernetes because these package versions have conflicting dependencies." added

#12 Updated by Backport Bot 10 months ago

  • Tags set to backport_processed

#13 Updated by Casey Bodley 10 months ago

  • Tags deleted (backport_processed)
  • Backport changed from reef to quincy reef

#14 Updated by Backport Bot 10 months ago

  • Copied to Backport #59625: quincy: setup-venv-for-mgr: make check fails from "ERROR: Cannot install -r requirements.txt (line 3) and kubernetes because these package versions have conflicting dependencies." added

#15 Updated by Backport Bot 10 months ago

  • Tags set to backport_processed

#16 Updated by Laura Flores 10 months ago

  • Related to Bug #59652: Builds failing from "ImportError: cannot import name 'appengine' from 'requests.packages.urllib3.contrib'" added

Also available in: Atom PDF