Create a new machine object
AddVolume mounts directory from the host at the same location in the fake machine
AddVolumeAt mounts hostDirectory from the host at machineDirectory in the fake machine
CreateImage does the same as CreateImageWithLabel but lets the library pick the label.
CreateImageWithLabel creates an image file at path a given size and exposes it in the fake machine using the given label as the serial id. If size is -1 then the image should already exist and the size isn't modified.
label needs to be less then 20 characters due to limitations from qemu
The returned string is the device path of the new image as seen inside fakemachine.
Run creates the machine running the given command
RunInMachine runs the caller binary inside the fakemachine with the same commandline arguments as the parent
RunInMachineWithArgs runs the caller binary inside the fakemachine with the specified commandline arguments
SetMemory sets the fakemachines amount of memory (in megabytes). Defaults to 2048 MB
SetNumCPUs sets the number of CPUs exposed to the fakemachine. Defaults to the number of available cores in the system.
SetScratch sets the size and location of on-disk scratch space to allocate (sparsely) for /scratch. If not set /scratch will be backed by memory. If Path is "" then the working directory is used as a default storage location
SetShowBoot sets whether to show boot/console messages from the fakemachine.