We can now press Ctrl+C remotely while any subprocess of the bootstrapping process is running,
previously SIGINTs weren't propagated to the bootstrapping process because there was a thread
in between it all. Now the bootstrapping process is in it's own process group.
The work consists of three parts:
* Allow for bootstrapping remotely,
this makes it possible to run the tests
on e.g. OSX with VirtualBox installed
* Make bootstrapping a fully automated process
where the manifests can be generated by the tests
and the tests can call the bootstrapper directly in python
* Create a framework wherein instances can be booted up
using the bootstrapped images and subsequently tested
It controls whether to include the 'deb-src' lines in image's
source.list.
Currently they are always included. This patch changes this
behavior by not including them by default; the user must set
this new config to true in order to include them.
This saves a bit of bandwidth in default installations. Also,
the use of src packages is not so usual in ordinary installations.
This is to allow building an image for a 64bit machine but with 32bit userspace.
Probably not a common usecase but ideal if you need to address more higher quantities of memory but cant migrate to a full 64bit userspace due to something like ruby eating twice as much memory.
Make sure it's either `auto' (the default), `always' or `never'. If it
does not match any of the values, raise a Docopt exception that causes
it to print usage and exit.
Tested:
- $ sudo ./bootstrap-vz --color=invalid manifests/gce.manifest.yml
Value of --color must be one of auto, always or never.
Usage: bootstrap-vz [options] MANIFEST
Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Mimic the behavior of the --color=<auto|always|never> found in tools
like `ls' and `grep'. Default to `auto' which checks whether stderr is a
tty to define whether colors are used.
Tested:
- Ran ./boostrap-vz --color=never and --color=always, confirmed
colorization worked as expected.
- Ran ./boostrap-vz --color=auto ${manifest_file} 2>bootstrap.log,
confirmed colors were not added to boostrap.log by default, repeated
the test with --color=always and confirmed escape sequences were
output.
Signed-off-by: Filipe Brandenburger <filbranden@google.com>