Skip to content

krasin/termite

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Termite is a generic distributed compilation system.

The master distributes the compilation to workers.  Workers run
arbitrary binaries chrooted in a FUSE mirror of the master's file
system, and then ship the results back to the master.


CAVEATS

Work in progress.  Do not use on machines shared with untrusted users


INSTALL

Get

  git clone git://github.com/hanwen/go-fuse.git
  git clone git://github.com/hanwen/termite.git
  (cd go-fuse && sh all.bash)

  cd termite
    ln -s ../go-fuse/fuse ../go-fuse/unionfs .
    sh all.bash


I do not goinstall go-fuse, since I develop go-fuse in tandem with
termite, but with some tweaks to the Makefile it should work.

Testing:

  ./worker.sh >& worker.log &
  ./master.sh >& master.log &
  export TERMITE_SOCKET=/tmp/termite-socket
  export PATH=/tmp/tools/termite:${PATH}
  make -j20


About

distributed compilation in go

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 95.9%
  • Shell 4.1%