Nexus Repository Manager 3 PyPi proxy fails to identify available packages

731 views
Skip to first unread message

James Newman

unread,
Apr 18, 2018, 11:45:50 AM4/18/18
to Nexus Users

We have Nexus 3 OSS set up in a:


master -> proxy front end


configuration. The proxy instances are configured to cache nothing, and always retrieve data from the master.


On the master we define three repositories


pypi-proxy-registry (a proxy of pypi.org)
pypi-hosted-internal (storage for internal packages)
pypi-group-internal (a group repository of the previous two)


On the proxy front end, we have a single proxy repository defined:


pypi-group-internal (configured to proxy through to the pypi-group-internal repository on the master)


The maximum component age and maximum metadata age for the proxy repository are set to 0 minutes


Our understanding is that this should then not cache anything, and always reach out to the master to retrieve python packages.


When we first install a new python package using the nexus pypi-group-internal proxy repository, we can successfully install the package.


This creates entries in the repository for both the package, and the simple metadata. For example:


cffi > 1.9.1 > cffi-1.9.1-cp27-cp27m-macosx_1-_1-_Intel.whl
simple > cffi


If an attempt is made to install this on another host, or if the package is uninstalled and installation reattempted the user will get an error from Nexus stating:


$ pip install cffi==1.9.1
Looking in indexes: https://<username>:<password>@my-nexus/repository/pypi-group-internal/simple
Collecting cffi==1.9.1
Could not find a version that satisfies the requirement cffi==1.9.1 (from versions: )
No matching distribution found for cffi==1.9.1


If we manually remove the metadata entry from the simple directory the package can once again be installed.

If we point the pip.conf file at the master nexus instead of using the proxy front end we can install the package continuously without problem.


If I set the maximum component age and maximum metadata age for the proxy repository to a number other than 0, then this the package can be downloaded, but for only as long as it's downloaded again within the period of minutes set as maximum component age and maximum metadata age.  If it's not, then we get the same "No matching distribution" error again.

Peter Lynch

unread,
Apr 18, 2018, 12:39:49 PM4/18/18
to James Newman, Nexus Users
Thanks for the detail you provided so far - if you could open a bug report in the NEXUS project at https://issues.sonatype.org with this information plus support zips from both master and proxy instances generated immediately after reproducing the problem we should eventually triage this issue.


--
You received this message because you are subscribed to the Google Groups "Nexus Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nexus-users+unsubscribe@glists.sonatype.com.
To post to this group, send email to nexus...@glists.sonatype.com.
To view this discussion on the web visit https://groups.google.com/a/glists.sonatype.com/d/msgid/nexus-users/2efcb754-42cf-4214-a404-6148d747dce9%40glists.sonatype.com.
For more options, visit https://groups.google.com/a/glists.sonatype.com/d/optout.

Reply all
Reply to author
Forward
0 new messages