local private pip server with some public packages and their dependencies

Hi all
we have some packages that are not public/open-source and we don't want them to be public. we want to create a private pip server repository with below specifications:
- ability to push our own packages to it, and install them easily from pip(configured to use this local server)
- ability to select some public packages and automatically fetch them and their dependencies, keep them update too(automatically obviously!)
by public package and it's dependencies i mean we give it a file(some how give it! like reading a requirements.txt file), it reads the file, sees that i have a flask package in there, it downloads flask and provides it for me. it should look and get that flask itself needs some other packages such as jinja2, werkzwerg and click to work. so it should download them to.
i think there is no pre-defined way to do it right? any solutions to do it?

Hi!
I must miss something, because what you describe is what devpi does.
You need a private index which has ``root/pypi`` as ``bases``. If you then use the simple index URL of that index, any packages uploaded to that index are available and all other packages will by retrieved from pypi.org.
Is there an additional requirement that isn't met? Did you try it and got an error?
Regards, Florian Schulze
On 19 May 2018, at 12:54, senaps wrote:
Hi all
we have some packages that are not public/open-source and we don't want them to be public. we want to create a private pip server repository with below specifications:
- ability to push our own packages to it, and install them easily
from pip(configured to use this local server)
- ability to select some public packages and automatically fetch them
and their dependencies, keep them update too(automatically obviously!)
by public package and it's dependencies i mean we give it a file(some how give it! like reading a requirements.txt file), it reads the file, sees that i have a flask package in there, it downloads flask and provides it for me. it should look and get that flask itself needs some other packages such as jinja2, werkzwerg and click to work. so it should download them to.
i think there is no pre-defined way to do it right? any solutions to do it? _______________________________________________ devpi-dev mailing list devpi-dev@python.org https://mail.python.org/mm3/mailman3/lists/devpi-dev.python.org/
participants (2)
-
Florian Schulze
-
senaps