On Tue, 11 Jun 2013 18:01:28 -0700 (PDT)
Todd O'Bryan <
toddo...@gmail.com> wrote:
> I have a fairly weird setup. I teach high school comp sci and have a room
> full of fat clients (no hard drives--they download enough of the OS to boot
> and then pull in what they need as they need it) with all the users' home
> folders stored on a server.
>
> When my senior-year class (roughly the equivalent of college sophomores in
> terms of CS background) uses SBT to create a project, every single student
> has to download all the dependencies to his/her ~/.ivy2/cache folder.
> That's a potential problem for two reasons: (1) we're wasting a lot of
> space to store 30 copies of the same dependencies on the same disk drive,
> and (2) our bandwidth is very spotty, so it can be very frustrating to get
> stuff installed.
>
> What I'd like to do is set up a shared Ivy Cache on the network that would
> get mounted along with the user's home folder. I think this will work fine
> once things are downloaded, but I'm a little concerned at what might happen
> if multiple students all try to update at the same time, since they'd be
> fighting with each other over who gets to fetch the dependency and store it
> in the cache.
One possibility is to have a shared filesystem repository. The cache won't copy the jars because it is a local repository.
> On the other hand, this should be no different than me running two
> different sbt update processes for different projects at the same time,
> because both of them would try to use my ~/.ivy2/cache folder and would
> have to not step on each other's toes.
>
> So, does anyone know a reason why this wouldn't work or have concerns that
> I should check on?
One reason it might not work as well as locally is that file locking doesn't always work on network drives.
> Also, where is the best place to override the -ivy option for everybody on
> the server? Should I unjar the sbt.jar, make the changes, and then re-jar
> it, or is there a less obnoxious way to deal with it?
The startup script can change the sbt.boot.properties that is used if you prefer. Rejarring might not be a bad solution though.
-Mark
> I have the summer to try to figure this out, but I'll have students working
> on projects some, so I will have time to experiment a little.
>
> Thanks!
> Todd
>
> --
> You received this message because you are subscribed to the Google Groups "simple-build-tool" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to
simple-build-t...@googlegroups.com.
> To post to this group, send email to
simple-b...@googlegroups.com.
> Visit this group at
http://groups.google.com/group/simple-build-tool?hl=en.
> For more options, visit
https://groups.google.com/groups/opt_out.
>
>