Fork me on GitHub
#holy-lambda
<
2022-06-07
>
steveb8n01:06:19

Q: I’m trying to speed up my CI. the native:conf step takes quite a long time to download my clojure deps so I’m trying to cache them. I’ve added a deps.edn cache config (bitbucket CI) but the deps are still downloaded. Is this because the conf step is run inside Docker?

steveb8n01:06:44

Is there a way to have the Docker container use the cached deps from the outer CI task?

steveb8n05:06:30

Hmm, now I’m trying a different solution. Following the docs and setting HL_NO_DOCKER in CI. If I can make this work then the prev question of cached deps doesn’t matter. I think I prefer this as a fix

steveb8n05:06:22

but my HL bb tasks are still trying to use docker. I’m using this as the base for my docker container…

FROM 

steveb8n05:06:43

has anyone else got HL_NO_DOCKER working in CI?

Karol Wójcik05:06:22

Oh. It might be a regression in the tasks. I will try to take a look tomorrow.

steveb8n05:06:26

ok thanks. much appreciated

Karol Wójcik05:06:41

tasks.clj L312, we should also check if HL_NO_DOCKER is set to skip the download. PR welcome ;>

steveb8n06:06:11

good to know. I’ve got to focus on a prod release for the next day or so. I’ll create PR after that if not done

Karol Wójcik06:06:16

Sure. Today I’m out of home, so I will try to make a change tomorrow! All the best to you!

steveb8n06:06:38

thanks. you know the fun of prod deployments 🙂

Karol Wójcik11:06:16

Oh yes, I do know how fun it is 😄 Here is the fix: df686cc87129e56a9a7b07c6c2e2168742eb1d45

steveb8n22:06:59

prod release went well. cleaning up the last bits now. thanks for the fix

steveb8n00:06:19

@UJ1339K2B just tried it with fix but getting this result + bb hl:compile Could not find /project/.holy-lambda/clojure-tools-1.10.3.1040.jar Downloading tools jar from to /project/.holy-lambda Downloading: com/fasterxml/jackson/core/jackson-databind/2.13.0/jackson-databind-2.13.0.pom from central Downloading: com/fasterxml/jackson/core/jackson-core/2.13.0/jackson-core-2.13.0.pom from central Downloading: com/fasterxml/jackson/core/jackson-annotations/2.13.0/jackson-annotations-2.13.0.pom from central Downloading: com/fasterxml/jackson/core/jackson-databind/2.13.0/jackson-databind-2.13.0.jar from central Downloading: com/fasterxml/jackson/core/jackson-core/2.13.0/jackson-core-2.13.0.jar from central Downloading: com/fasterxml/jackson/core/jackson-annotations/2.13.0/jackson-annotations-2.13.0.jar from central Downloading: borkdude/rewrite-edn/0.0.2/rewrite-edn-0.0.2.pom from clojars Downloading: rewrite-clj/rewrite-clj/1.0.572-alpha/rewrite-clj-1.0.572-alpha.pom from clojars Downloading: org/clojure/tools.reader/1.3.5/tools.reader-1.3.5.pom from central Downloading: rewrite-clj/rewrite-clj/1.0.572-alpha/rewrite-clj-1.0.572-alpha.jar from clojars Downloading: org/clojure/tools.reader/1.3.5/tools.reader-1.3.5.jar from central Downloading: borkdude/rewrite-edn/0.0.2/rewrite-edn-0.0.2.jar from clojars [holy-lambda] Executable /root/.graalvm/bin/java does not exists! Using fallback: java instead! Did you set up GRAALVM_HOME? [holy-lambda] Executable /root/.graalvm/bin/native-image does not exists! Using fallback: native-image instead! Did you set up GRAALVM_HOME? ----- Error -------------------------------------------------------------------- Type: java.io.IOException Message: Cannot run program "docker": error=2, No such file or directory Location: /project/.holy-lambda/.gitlibs/libs/io.github.FieryCod/holy-lambda-babashka-tasks/1469bb96b85c2c65a52df9e3a4914dde1b4c816f/modules/holy-lambda-babashka-tasks/src/holy_lambda/tasks.clj:182:16 ----- Context ------------------------------------------------------------------ 178: (:err result)))) 179: 180: (defn shs-no-err 181: [cmd & args] 182: (let [result (apply csh/sh (remove nil? (into (p/tokenize cmd) args)))] ^--- Cannot run program "docker": error=2, No such file or directory 183: (if (s/blank? (:err result)) 184: (when-not (s/blank? (:out result)) 185: (:out result)) 186: nil))) 187: ----- Stack trace -------------------------------------------------------------- clojure.core/apply - <built-in> holy-lambda.tasks/shs-no-err - /project/.holy-lambda/.gitlibs/libs/io.github.FieryCod/holy-lambda-babashka-tasks/1469bb96b85c2c65a52df9e3a4914dde1b4c816f/modules/holy-lambda-babashka-tasks/src/holy_lambda/tasks.clj:182:16 holy-lambda.tasks/shs-no-err - /project/.holy-lambda/.gitlibs/libs/io.github.FieryCod/holy-lambda-babashka-tasks/1469bb96b85c2c65a52df9e3a4914dde1b4c816f/modules/holy-lambda-babashka-tasks/src/holy_lambda/tasks.clj:180:1 holy-lambda.tasks - /project/.holy-lambda/.gitlibs/libs/io.github.FieryCod/holy-lambda-babashka-tasks/1469bb96b85c2c65a52df9e3a4914dde1b4c816f/modules/holy-lambda-babashka-tasks/src/holy_lambda/tasks.clj:310:12 clojure.core/boolean - <built-in> holy-lambda.tasks/docker-image-exists? - /project/.holy-lambda/.gitlibs/libs/io.github.FieryCod/holy-lambda-babashka-tasks/1469bb96b85c2c65a52df9e3a4914dde1b4c816f/modules/holy-lambda-babashka-tasks/src/holy_lambda/tasks.clj:310:3 holy-lambda.tasks/docker-image-exists? - /project/.holy-lambda/.gitlibs/libs/io.github.FieryCod/holy-lambda-babashka-tasks/1469bb96b85c2c65a52df9e3a4914dde1b4c816f/modules/holy-lambda-babashka-tasks/src/holy_lambda/tasks.clj:308:1 holy-lambda.tasks - /project/.holy-lambda/.gitlibs/libs/io.github.FieryCod/holy-lambda-babashka-tasks/1469bb96b85c2c65a52df9e3a4914dde1b4c816f/modules/holy-lambda-babashka-tasks/src/holy_lambda/tasks.clj:312:11 user-5e1b2b32-2c62-4fb2-9bc8-2c04a0d5286a - <expr>:5:47

Karol Wójcik15:06:44

@U0510KXTU you didn't update the tasks SHA.

steveb8n21:06:16

of course, a silly mistake. I updated the deps.edn (out of habit) and forgot the bb.edn. my CI run is now twice as fast as last week. thanks!