builds images from kickstart files using MIC2 image creation tools.
Supports either KVM or normal MIC2 operation. KVM operations offer more
flexibility and cleaner building but is much slower as each time a new clean
root filesystem is built using qemu from a base image.
- The build_ks participant should be used to read and validate kickstart
files, and subsequently fills the image.kickstart field.
- The image_id field is expected to be unique, as provided by the
request_image participant which records it in a django database
Workitem fields IN:
| ||Contents of a kickstart file. Refer to :
for a description of kickstart files
| ||Unique ID of this image job
| ||added as another directory layer under which images will be saved
Optional. If not provided “requests” will be used.
| ||Format of image as supported by mic2. ex: livecd, raw, etc..
Check the available formats in mic2 –help
| ||Name of the image, usually the name of the kickstart in the format
$VERTICAL-$ARCH-$VARIANT , required by mic2 when using the –release
option ex: meego-core-ia32-minimal
| ||Turns on release creation in mic2
| ||Architecture of image. ex: i586, armv7l, etc ..,
| ||list of extra options to be passed verbatim to mic2
Workitem fields OUT:
| ||True if mic2 returned with status 0, False otherwise
| ||base URL at which all files produced by mic2 can be accessed
| ||URL to download the image file directly
| ||URL to the mic2 logfile
| ||Any errors returned by mic2
| ||True if everything was OK, False otherwise
Participant class as defined by the SkyNET API
participant control thread
Handle the workitem so that an image is created from the kickstart
file correctly. One needs the kickstart as a complete file in the
workitem, an unique id for image, image type as defined by MIC2, name
for the image and architecture that the image root filesystem will use.
job control thread
function to push status by launching a process, ?utility