Skip to content
a no-op Garden backend
Branch: master
Clone or download
vito scope executable lookup to container rootfses
before this change, exec.Command(...) would end up finding the
executable using the host's $PATH, which could resolve to a path that
doesn't actually exist in the container.

with this change, it will be resolved using the container's configured
$PATH, with a sensible default if it's not set.

Signed-off-by: Alex Suraci <>
Latest commit d5a6d80 Jan 28, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
ci move vendor/ to deps/src/ Jul 16, 2016
cmd/houdini update imports Aug 4, 2016
process processes can be given an ID Mar 16, 2017
ptyutil Add Solaris support Jul 4, 2016
.gitignore update deps and add gross script Aug 4, 2016
.gitmodules switch to go.mod Jan 26, 2019
backend.go support raw:// rootfses on linux Jan 26, 2019
container_stub.go scope executable lookup to container rootfses Jan 28, 2019
container_test.go handle StreamOut with a trailing slash properly Mar 17, 2017

houdini: the world's worst containerizer

Houdini is effectively a no-op Garden backend portable to esoteric platforms like Darwin and Windows.

For a Linux Garden backend, please use Garden Linux instead.

Houdini makes no attempt to isolate containers from each other. It puts them in a working directory, and hopes for the best.

On Windows, it will at least use Job Objects to ensure processes are fully cleaned up. On OS X, there are basically no good ways to do this, so it doesn't bother.

You can’t perform that action at this time.