On 08/22/2017 12:41 AM, Fam Zheng wrote: > v3: Drop RFC. > Add Stefan's and Kamil's reviewed-bys. > Use optparse. [Stefan] > Drop the VGA patch. [Paolo, Stefan] > Improve exit/exit code/doc. [Stefan] > Drop unused line from basevm.py. [Stefan] > Drop "--target-list" form Makefile. > More intelligent '-j'. > Add README. [Stefan] > > v2: - Add docstring. [Stefan] > - Call self._load_io_lod. [Stefan] > - Use "info usernet" and dynamic ssh_port forwarding. [Stefan] > - Add image checksum. > - Use os.rename() and os.makedirs(). [Stefan] > - Fix NetBSD URL. [Kamil] > > Build tests in one 32 bit Linux guest and three BSD images are defined in this > series. This is a more managable way than the manually maintained virtual > machines in patchew. Also, one big advantage of ephemeral VMs over long > running > guests is the reduced RAM usage of host, which makes it possible to have one > host test all these BSD variants and probably more. > > The BSD guest templates are manually prepared following > > https://wiki.qemu.org/Hosts/BSD > > as it is not easy to automate. (The ideal approach is like the ubuntu.i386 > script, which configures the guest on top of an official released image, fully > automatically.) >
I replayed manually the FreeBSD VM setup, just to get a sense of how it could be automated. Taking a few steps back, I realized that: * describing how to prepare a given OS to build QEMU is a generic task, not really bound to this VM setup * cloud-init, while unarguably a sound solution, is bound to not only VMs, but to already prepared (with cloud-init support) images What if we attempt to switch the "build environment setup" automation to use a more generic tool such as ansible? Having an in-tree playbook that could be executed against a VM seems like slightly better than syncing the WIKI pages. I'm no expert in ansible, but I can give it that a try if you fancy the idea. -- Cleber Rosa [ Sr Software Engineer - Virtualization Team - Red Hat ] [ Avocado Test Framework - avocado-framework.github.io ] [ 7ABB 96EB 8B46 B94D 5E0F E9BB 657E 8D33 A5F2 09F3 ]
signature.asc
Description: OpenPGP digital signature