Manages isolated, ephemeral, and resource controlled environments.
The project's primary goal is to provide a simple API for managing isolated environments. These isolated environments -- or containers -- can be limited in terms of CPU usage, memory usage, disk usage, and network access. As of writing, the only supported OS is Linux.
This repository contains the following components:
warden-protocol-- protocol definition, used by both the server and clients
warden-client-- client (Ruby)
em-warden-client-- client (Ruby's EventMachine)
For information on how to run the warden server and interact with it at the command line, see the warden server README.
Warden server tests are run automatically in a newly created container using
a virtualbox image dynamically downloaded from
# Checkout the repos git clone https://github.com/cloudfoundry/warden
There is a
.ruby-version file in the root of the repo which is copied into
the created container filespace (along with the rest of the
directory, with a few exceptions). The version in this file is that used
in the container. This is pre-installed in the
bin/test_in_vm you need to have this exact same version of ruby
# Run warden server tests bin/test_in_vm
The project is licensed under the Apache 2.0 license (see the
Please read the contributors' guide.