← Back to team overview

vmbuilder team mailing list archive

Re: VMBuilder plans

 

Hi Soren,

this is fantastic news :)
I'm quite optimistic that with the procedure changes you plan this great
project will finally get the attention it deserves.

Do you have any specific ideas for the new architecture of vmbuilder?
Maybe we could use a wiki page to explore and discuss such possible
architectures in more detail.

What I think to be very important is to kind of negotiate the build
capabilities of the host operating system and the capabilities and
requirements of the distribution plugins somehow at startup. vmbuilder
needs to check which filesystems, bootmanagers and other tools the
plugins require, which the host system can satisfy and which could be
satisfied by installing what packages.

As I noted when I stumbled over the grub2 bug it could also become
necessary to repackage some certain tools for use with vmbuilder. I may
err but as I understand grub2 you need to install different packages if
you use bios, efi 32/64Bit etc. and you can only have installed one at a
time because the maintainers only think about people who install a boot
manager to use them on the machine they install it on but don't think
about us VM builders.

But negotiation and special vmbuilder tool packages also appear very
interesting to me since apart from seeming necessary to allow
conceptional clean building of Ubuntu VMs they could also open the door
to create VM images of every operating system imaginable from within
Ubuntu, at least as long as there are the right tools available to
vmbuilder.

I think I could aid the design of the new architecture by stress testing
it against vmbuilder-gui (which is kind of experimental but works quite
well in my opinion) to see if the new architecture is flexible enough to
handle other use cases than cli, gracefully. It would also be a good
idea to not forget about suitability for a web gui although we don't
have one at the time.

I'm a big fan of TDD, too. But I could also need some more experience
with more complex testing scenarios. I think vmbuilder could be hard to
unit test because tests are easiest to write when your code is loosely
coupled and functional style at best while vmbuilder is all about
side-effects (calling command-line programs). Nevertheless I believe
that we could improve the code quality of vmbuilder considerably with
some well written tests.


Best regards,

Andreas




Follow ups

References