taskotron / taskotron-vmbuilder

Created by kparal a year ago
ARCHIVED: Create disk images to be used as minions (VMs) in Taskotron
Members 2

THIS PROJECT IS NOW UNMAINTAINED.

This project is currently not used for Taskotron purposes and is considered dormant. Instead, base_images project is used to generate Taskotron minion images.


Taskotron VM Builder

This is a proof of concept code, don't rely on this.

Taskotron VM Builder should provide an easy way to create customized virtual machines to be used in Taskotron as disposable clients. The machine will be built according to specified parameters, mainly:

  • contain a requested set of up-to-date packages
  • have libtaskotron installed
  • have user accounts configured
  • have remote logging capabilities configured (ssh, serial console)

This image can then be snapshotted and used to spawn virtual machines, throwing away any disk changes before each new boot.

If historical images are archived, they can provide a way to have reproducible environment for re-executing tasks.

Dependencies

  • libguestfs-tools-c

And then everything from requirements.txt:

$ virtualenv --system-site-packages env_vmbuilder
$ source env_vmbuilder/bin/activate
$ pip install -r requirements.txt

Execution

You can generate a simple VM image like this:

$ ./vmbuilder.py templates/f21-minimal.yaml

Run ./vmbuilder.py --help to see full help.

Templates

Each VM image is described by its template. You can find some templates predefined in templates/ directory. See templates/README.templates for instructions how to define your own template.

Contact

Please report bugs or requests in Fedora QA's Phabricator.

You can reach us via a mailing list or IRC. Read more at Taskotron wiki page.