Pip package installation failing after the relocation of blob store

Hi Everyone,

Unable to install pip packages after relocating the blob store.

Version: Sonatype Nexus Repository ManagerOSS 3.24.0-02

image

I can view the package from the browser.

Below is my pip.conf
[global]
trusted-host = 110.34.3.34
index = https://admin:admin@110.34.3.34:8443/repository/hsop-virtual-pypi/pypi
index-url = https://admin:admin@110.34.3.34:8443/repository/hsop-virtual-pypi/simple
cert = /home/nexus/nexus-repo.cert

below is the error when installation , can any body help

[nexus@bst-0-cachenexus ~]$ sudo pip3.6 install PyYAML==5.3 -vvv
Non-user install because site-packages writeable
Created temporary directory: /tmp/pip-ephem-wheel-cache-5kdoz8f4
Created temporary directory: /tmp/pip-req-tracker-69b9td3m
Initialized build tracking at /tmp/pip-req-tracker-69b9td3m
Created build tracker: /tmp/pip-req-tracker-69b9td3m
Entered build tracker: /tmp/pip-req-tracker-69b9td3m
Created temporary directory: /tmp/pip-install-a_1905ma
Looking in indexes: https://admin:****@110.34.3.34:8443/repository/hsop-virtual-pypi/simple
1 location(s) to search for versions of PyYAML:
* https://admin:****@110.34.3.34::8443/repository/hsop-virtual-pypi/simple/pyyaml/
Fetching project page and analyzing links: https://admin:****@110.34.3.34::8443/repository/hsop-virtual-pypi/simple/pyyaml/
Getting page https://admin:****@110.34.3.34::8443/repository/hsop-virtual-pypi/simple/pyyaml/
Found credentials in url for 110.34.3.34::8443
Looking up "https://110.34.3.34::8443/repository/hsop-virtual-pypi/simple/pyyaml/" in the cache
Request header has "max_age" as 0, cache bypassed
Starting new HTTPS connection (1): 110.34.3.34::8443
https://110.34.3.34::8443 "GET /repository/hsop-virtual-pypi/simple/pyyaml/ HTTP/1.1" 404 1921
Status code 404 not in (200, 203, 300, 301)
Could not fetch URL https://admin:****@110.34.3.34::8443/repository/hsop-virtual-pypi/simple/pyyaml/: 404 Client Error: Not Found for url: https://110.34.3.34::8443/repository/hsop-virtual-pypi/simple/pyyaml/ - skipping
Given no hashes to check 0 links for project 'PyYAML': discarding no candidates
ERROR: Could not find a version that satisfies the requirement PyYAML==5.3 (from versions: none)
ERROR: No matching distribution found for PyYAML==5.3
Exception information:
Traceback (most recent call last):
  File "/usr/lib/python3.6/site-packages/pip/_internal/cli/base_command.py", line 188, in _main
    status = self.run(options, args)
  File "/usr/lib/python3.6/site-packages/pip/_internal/cli/req_command.py", line 185, in wrapper
    return func(self, options, args)
  File "/usr/lib/python3.6/site-packages/pip/_internal/commands/install.py", line 333, in run
    reqs, check_supported_wheels=not options.target_dir
  File "/usr/lib/python3.6/site-packages/pip/_internal/resolution/legacy/resolver.py", line 179, in resolve
    discovered_reqs.extend(self._resolve_one(requirement_set, req))
  File "/usr/lib/python3.6/site-packages/pip/_internal/resolution/legacy/resolver.py", line 362, in _resolve_one
    abstract_dist = self._get_abstract_dist_for(req_to_install)
  File "/usr/lib/python3.6/site-packages/pip/_internal/resolution/legacy/resolver.py", line 313, in _get_abstract_dist_for
    self._populate_link(req)
  File "/usr/lib/python3.6/site-packages/pip/_internal/resolution/legacy/resolver.py", line 279, in _populate_link
    req.link = self.finder.find_requirement(req, upgrade)
  File "/usr/lib/python3.6/site-packages/pip/_internal/index/package_finder.py", line 930, in find_requirement
    req)
pip._internal.exceptions.DistributionNotFound: No matching distribution found for PyYAML==5.3
Removed build tracker: '/tmp/pip-req-tracker-69b9td3m'
[hsopsvc@bst-0-cachenexus ~]$

I could notice that the simple directory ( index ) is not getting generated even after manually rebuild the index.

Take a look at Nexus and see if there are any errors.

Otherwise take a look at simple to see if PyYAML is present, if it is follow the link to the PyYAML metadata and see if the version is there.

PEP 503 contains information about the pypi repository format - https://www.python.org/dev/peps/pep-0503/

@mpiggott, Thanks for the reply.

the simple directory itself was not getting created,

I was actually trying to migrate the blob which was associated with a proxy PyPI repo to a hosted PyPI repo between two nodes.

I could proceed after recreating the PyPI repository as a proxy on the destination.