> Also needs to be replicated for npm, cargo, maven, docker, ...
All these frameworks come with a tool to run an internal repo/mirror.
There are also commercial offerings (like artifactory) that cover all these languages in a single tool.
For python, just set PIP_INDEX in the CI environment to point to the internal mirror and it will be used automatically. It's very easy.
By default the downloaded wheels are cached in ~/cache/somewhere. Isolated builds don't benefit from it if they start with a fresh filesystem on every run, consider mounting a writable directory to use as cache, the speedup is more than worth it.
Just so. It does take a little configuration. The system I was talking about had been band-aided since the company's two-person days, when I'm sure the builds were a fraction of the size. Good example of infra tech debt.
All these frameworks come with a tool to run an internal repo/mirror.
There are also commercial offerings (like artifactory) that cover all these languages in a single tool.
For python, just set PIP_INDEX in the CI environment to point to the internal mirror and it will be used automatically. It's very easy.
By default the downloaded wheels are cached in ~/cache/somewhere. Isolated builds don't benefit from it if they start with a fresh filesystem on every run, consider mounting a writable directory to use as cache, the speedup is more than worth it.