When launching clojure
in our CI pipeline, we're occasionally seeing the problem in the logs below (edited for brevity). Clojure is trying to clone one of our git dependencies multiple times at once and ends up failing with the git error message fatal: destination path '...' already exists and is not an empty directory.
. The said dependency appears multiple times in our dependency tree.
$ clojure -A:build:dev:test -P
Cloning: ssh://git@gitlab.com/xxx/yyy/www/our-repo.git
Cloning: ssh://git@gitlab.com/xxx/yyy/www/our-repo.git
Cloning: ssh://git@gitlab.com/xxx/yyy/www/our-repo.git
Downloading: org/clojure/clojure/1.10.3/clojure-1.10.3.pom from central
Error building classpath. Unable to clone /builds/xxx/yyy/zzz/.gitlibs/_repos/ssh/gitlab.com/xxx/yyy/www/our-repo
fatal: destination path '/builds/xxx/yyy/zzz/.gitlibs/_repos/ssh/gitlab.com/xxx/yyy/www/our-repo' already exists and is not an empty directory.
Could this be a bug in tools.deps.alpha or in tools.gitlibs? This is different from TDEPS-180 in that in our case, we're launching only one clojure
process.
We're using Clojure CLI version 1.10.3.1040
. We're upgrading to 1.10.3.1087, but since this problem happens intermittently, it will take a while to tell if it helps.