Bootstrap Debian images for virtualized environments
Find a file
2013-07-13 12:42:26 +02:00
base Ensure minimum volume size of 1M 2013-07-09 21:31:10 +02:00
common Logging fixes 2013-07-08 23:14:04 +02:00
logs logging 2013-07-08 23:13:58 +02:00
manifests Use month not minute for ami name 2013-07-08 23:14:08 +02:00
plugins Prebootstrapped plugin now autocreates a snapshot 2013-07-09 20:45:57 +02:00
providers Ensure the volume size is a multiple of 1024 when using EBS 2013-07-09 21:30:39 +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 Clarify the required jsonschema version 2013-07-13 12:42:26 +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 4, 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.