This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-12-28
Channels
- # beginners (2)
- # calva (8)
- # capetown (1)
- # clojure (28)
- # clojure-europe (6)
- # clojure-norway (82)
- # clojure-sweden (1)
- # clojuredesign-podcast (5)
- # clojurescript (26)
- # core-async (3)
- # cryogen (7)
- # datahike (30)
- # datomic (10)
- # figwheel-main (8)
- # honeysql (8)
- # hyperfiddle (15)
- # jobs-discuss (6)
- # lsp (6)
- # matrix (6)
- # off-topic (12)
- # overtone (1)
- # polylith (6)
- # portal (6)
- # releases (1)
- # shadow-cljs (9)
- # sql (1)
- # xtdb (5)
what are the current best practices for dealing with CI setups where I want to not have to download dependencies for every build. Shorter, but related, is there a process that allows me to relocate the maven local repository elsewhere, where I could presumably poplulate it? I'm having zero luck with things like [export MAVEN_OPTS=-Dmaven.repo.local=/tmp/maven_repo] having any effect.
Advice might be wildly different based on which CI system you're using. But here are some thoughts that might be helpful: • Use something like Archiva to mirror/proxy the upstream resources • If the build is in a container, mount the external repo folder • Perhaps something as simple as replacing the repo folder with a symlink to a central location?
if you are just using shadow-cljs.edn
(i.e. no lein/deps.edn) you can set :maven {:local-repo "maven"}
in shadow-cljs.edn
to have the files in the project dir directly
thanks, {:maven {:local-repo}} is exactly what I was needing, but not finding, in the docs.
Be mindful that if Maven invocations run concurrently they might trip over each other and trash the local-repo.
interesting. probably not a player in this case, but I'm curious as to why this would be any different than just ~/.m2/repository ?
It isn't. If you run two Maven processes sharing the same ~/.m2/repository, bad things may happen.