Fork me on GitHub
#leiningen
<
2021-01-11
>
Linus Ericsson13:01:07

I have a leiningen project with continuous integration. I want to have full control over the dependencies used by the project, by setting up my own (most likely s3-based) maven file system structure based on one initial lein deps. Can I use leiningen deploy or some other leiningen command to install all the dependencies of the project into this private repo? If not, how do I solve it?

mikerod14:01:08

https://github.com/technomancy/leiningen/blob/stable/sample.project.clj#L145 :local-repo For where local install and maven cached artifacts go https://github.com/technomancy/leiningen/blob/stable/sample.project.clj#L104 :repositories for fetch and deploy remotes. There are some finger grained repository keys for more control also in this sample @oscarlinusericsson

Linus Ericsson14:01:16

Are you suggesting that i make a lein deps to a local m2 folder and then upload it as a whole to, say, an s3-bucket? I was thinking there would be some batch operation like lein deps and then lein install-all-deps-into-a-certain-private-repo , but if not, uploading the resulting folder would certainly work, albeit with some extra work when upgrading dependencies. I guess the most common way of solving this is to use a maven mirror that works a proxy. Thanks!

👍 3
noisesmith17:01:45

lein treats the cache as a cache, and doesn't have commands for manipulating it (other than downloading new items that aren't yet present, or installing from a local artifact into the cache)

👍 3