boot

:boot-clj: https://boot-clj.github.io/ — build tooling for Clojure. Dev chat in #boot-dev
Markus Gustavsson 2019-06-03T09:01:19.008300Z

Hello! I want to build a project that uses boot on Windows. boot.exe requires java 1.7.0 which is a really old version that I really don't want to install. Is there some other way to install/run boot on Windows?

flyboarder 2019-06-03T17:05:29.009100Z

@markus.gustavsson244 use Windows Subsystem for Linux and run boot as if it were on Ubuntu

flyboarder 2019-06-03T17:06:59.009700Z

just make sure you are using the latest build of Win10

2019-06-03T18:33:31.010500Z

Is there a way to ask boot to print what is the .m2/repository location being used is?

2019-06-03T18:34:26.011400Z

(I have a task in a build pipeline that takes time because it downloads the dependencies, however they are already copied in /root/.m2 - but it may not be the place

flyboarder 2019-06-03T18:55:23.012400Z

@nha it’s almost always ~/.m2 unless you have changed it

2019-06-03T18:55:53.013200Z

I know there is a var controlling it (I am not setting it)

2019-06-03T18:56:20.014Z

but I can see /root/.m2 on the container being populated just before running the task

2019-06-03T18:56:34.014600Z

and yet it downloads the deps when invoking boot

flyboarder 2019-06-03T18:56:40.014800Z

Ah so is boot being run as root then?

flyboarder 2019-06-03T18:57:03.015700Z

That’s probably why it’s using that location

flyboarder 2019-06-03T18:57:36.016500Z

If you are in a container the deps will download every time, since when the container starts up again it has no deps

flyboarder 2019-06-03T18:57:59.017200Z

You would need to build a container after downloading the deps if you wanted to cache them

2019-06-03T18:58:46.017700Z

right but I have the deps on the host and I tried docker cp on the container and setting the volumes in docker-compose

flyboarder 2019-06-03T18:59:48.018900Z

@nha I’m not sure that will work, you would need a volume that mounts your host m2 to the root m2 in the container

flyboarder 2019-06-03T19:00:34.019800Z

I mean I’m sure it can work, the same way as replacing the working directory, I just don’t know what it would be off hand

2019-06-03T19:01:38.020700Z

Well I seem to be able to copy the files (I can docker exec -i my_container ls "/root/.m2" etc) but it doesn’t seem to be the right place for boot

2019-06-03T19:02:51.021200Z

so I was thinking maybe it looks somewhere else and I wanted to check that - but I must have missed something

flyboarder 2019-06-03T19:16:31.022100Z

@nha it’s possible boot is using two places, but I don’t know without taking a look at your docker setup

2019-06-03T19:18:13.022700Z

two places? you mean another than user/.m2 ?

2019-06-03T19:20:01.024Z

I think before making a reproducible example I might just try and set BOOT_LOCAL_REPO - see what happens

flyboarder 2019-06-03T19:21:03.025100Z

Yeah that’s the easiest way to see what’s going on, it might not matter tho, again depending on which container images you are using

2019-06-03T19:38:37.026Z

here is the container - https://gist.github.com/nha/bdbde7768f0724b63d1fad9122b3b5c2

2019-06-03T19:41:02.026400Z

FROM ubuntu:16.04 and a bunch of (too much) stuff

2019-06-03T19:45:03.027500Z

this is both the “parent” container (that has .m2 populated) and the “child” container (where I am trying to copy it)

2019-06-03T21:23:30.028Z

setting BOOT_LOCAL_REPO doesn’t seem to work