Bootstrap Debian images for virtualized environments
Find a file
Anders Ingemann c813dfaffa Merge pull request #9 from boltronics/manifest_fix
Allow manifest "sources" to be any valid file name.
2014-02-21 11:02:47 +01:00
base Allow manifest "sources" to be any valid file name. 2014-02-21 11:21:19 +11:00
common Permit referring to Jessie as 'jessie', not just as 'testing' (as when Jessie goes stable in a year, we dont want to be then updating this build script). 2014-02-08 16:28:52 +00:00
logs logging 2013-07-08 23:13:58 +02:00
manifests Add S3 backed AMI manifest for China (Beijing). 2014-02-08 18:46:23 +00:00
plugins Minimize size plugin can now shrink vmdk images 2014-02-03 17:25:50 +01:00
providers minor cleanup in kvm provider 2014-02-18 00:08:44 +01: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
bootstrap-vz Rename to bootstrap-vz for release. 2014-02-03 17:37:36 +01:00
CONTRIBUTING.md PEP8-ify things. 2013-08-17 17:28:46 +02:00
README.md Specify the required boto version in the README. 2014-02-21 14:16:41 +11:00

bootstrap-vz

bootstrap-vz is a fully automated bootstrapping tool for Debian. It creates images for various virtualized platforms (at the moment: kvm, virtualbox, ec2). The plugin architecture allows for heavy modification of standard behavior (e.g. create a vagrant box, apply puppet manifests, run custom shell commands).

At no time is the resulting image booted, meaning there are no latent logfiles or bash_history files.

The bootstrapper runs on a single json manifest file which contains all configurable parameters. This allows you to recreate the image whenever you like so you can create an updated version of an existing image or create the same image in multiple EC2 regions.

Dependencies

You will need to run debian wheezy with python 2.7 and debootstrap installed. Other depencies include:

  • qemu-utils
  • parted
  • grub2
  • euca2ools
  • xfsprogs (If you want to use XFS as a filesystem) Also the following python libraries are required:
  • boto (version 2.14.0 or higher)
  • jsonschema (version 2.0.0, only available through pip)
  • termcolor
  • fysom

Bootstrapping instance store AMIs requires euca2ools to be installed.