For pantsbuild internals, how does that fetch its ...
# general
h
For pantsbuild internals, how does that fetch its third party dependencies? If I set
[python-repos].indexes
, will that get used for pants internals as well as the requirements we have in our repository?
f
I believe that is used mostly for user requirements. If you are using the Pants launcher ("scie-pants") to run Pants, it manages a separate Python and venv for Pants internals
The venv for Pants internals is built from a PEX downloaded from GitHub releases.
If you use the
[GLOBAL].plugins
option, then it is also used for that if you are installing Pants plugins that way.
h
No plugins currently. We want to completely disable pypi access in our org. So I'm curious what will break when we do that. If it's built from a pex though, that's fine since it would come with everything and we can proxy github releases through our own servers.
f
The issue you may find is that Pants/Pex will want to rebuild a venv using a resolve's lockfile. If the lockfile refers to PyPI URLs, it will try to access PyPI at that moment.
So you will likely need to run a PyPI mirror of some sort and make sure the lockfile uses URLs pointing at that mirror.
(Or provide some other way for Pex to gain access to wheels etc.)