Bootstrap Debian images for virtualized environments
Find a file
2013-07-14 10:08:40 +02:00
base Create unique identifier in BootstrapInformation 2013-07-13 15:12:46 +02:00
common Return stdout in log_check_call 2013-07-13 15:12:45 +02:00
logs logging 2013-07-08 23:13:58 +02:00
manifests Began work on S3 backed instances. Refactored adding tasks. 2013-07-13 15:13:03 +02:00
plugins Remove 'Volume' part from ebs tasks. 2013-07-13 15:12:45 +02:00
providers Began work on S3 backed instances. Refactored adding tasks. 2013-07-13 15:13:03 +02:00
.gitignore Ignore vagrant files 2013-07-08 23:13:58 +02:00
__init__.py Basic structure up and running 2013-07-08 23:13:56 +02:00
build-debian-cloud Rename common module to base 2013-07-08 23:13:57 +02:00
README.md Fix required jsonschema version and link to package homepage 2013-07-14 10:08:40 +02:00

build-debian-cloud python version (preview)

This is a preview of the build-debian-cloud python version.
It currently only supports EBS booted volumes and none of the plugins have been ported.

Suggestions

The reason I release this preview is to get as many suggestions as possible. If you have an idea for how to improve upon the architecture or simply spotted a bug, please feel free to file a bug report. Pull requests are also welcome!

Dependencies

You will need to run debian wheezy with python 2.7 and debootstrap installed. Also the following python libraries are required:

  • boto
  • jsomschema (version 2.0.0, only available through pip)
  • termcolor

Highlights

  • The desired image is configured entirely via a JSON manifest file
    • Manifests are validated by a json schemas
    • Support comments
  • Proper support for different providers
  • The task based system has been completely revamped
    • Higher granularity increases reusability of tasks across providers
    • Tasks are neatly organized into modules
    • A task dependency graph is built to determine the execution order
  • Support for rollback actions if something fails
  • Logfiles
    • All output from invoked subprocesses is logged

Disclaimer

This is only a preview of the bootstrapper, so you can expect bugs and major architectural changes. Do not expect that the final version will look anything like this.