You can customize your pip.conf to point to a custom pypi repository
Sometimes a pip user may want to install a python package from a repository other than http://pypi.python.org/simple/.
ONAP has a staging repository in nexus3 for example at https://nexus3.onap.org/repository/PyPi.staging/.
By default, when you "pip install" it pulls from the public pypi repo, but if you want to pull from a custom repo there are 3 ways to do so (listed in order of precedence):
By passing a CLI flag to specify a custom index url
pip install -i/--index-url <url> <package>
By setting an environment variable
export PIP_INDEX_URL=<url> pip install <package>
By specifying in a custom pip.conf file
[global] timeout = 60 index-url = https://nexus3.onap.org/repository/PyPi/simple
Related articles
2 Comments
Lusheng Ji
Could you please clarify, on those Jenkins build VMs, what index URLs are already defined in the installed pip.conf with index-url and extra-index-url?
Since we would like to do pip install with ONAP built pip packages that are not yet released (e.g. for testing), please include all Pypi.staging (for ONAP built but yet released), Pypi.release (for ONAP released), and Pypi (proxy for global pypi) in the pip.conf file on the ONAP Jenkins build VMs. Or just Pipy.staging and Pypi.public because according to How to use PyPi JJB Templates, Pypi.public is the aggregate of Pypi.release and Pypi.
Thanks.
Lianhao Lu
I try to run to install a package from the staging repo, but it fails. But I do find vnfsdk on that repo. Why?
$ pip install -i https://nexus3.onap.org/repository/PyPi.staging/ vnfsdk
Collecting vnfsdk
Could not find a version that satisfies the requirement vnfsdk (from versions: )
No matching distribution found for vnfsdk