This is extremely helpful.  I only discovered virt-builder while debugging the issue with ipv6 I reported a few days ago.  Great little tool!

Thank you!

From: "Richard W.M. Jones" <>
Sent: Wednesday, April 3, 2019 12:29 PM
To: Jonathan Wright
Subject: Re: [Libguestfs] cloud-init in virt-builder images

On Wed, Apr 03, 2019 at 09:34:03AM -0500, Jonathan Wright wrote:
> I've noticed that none of the images from virt-builder have
> cloud-init in them by default.  The documentation reads to me as if
> the OS vendor's official cloud images are the ones used as the
> sources for the generated images but I'm assuming this is wrong.

The problem with cloud-init is that it interrupts normal boot if
you're not booting the images in the cloud.  However you can usually
add cloud-init by doing:

virt-builder --install cloud-init os-version

> I know for a fact CentOS's cloud images from
> and Ubuntu's from
> have cloud-init installed
> and enabled already.
> Where are the images sourced from if not these official images?

The ones we supply are built using this script:

The ones from SUSE are built using their build system.  We'd like
other distros to build there own images for us, but no others do so

> I understand I can install cloud-init with virt-builder but I'm
> trying to figure out what OS-distributed images are in use so I may
> determine what else is different from expectations.

You can set up your own virt-builder repos, and populate them with
images from wherever you like, and if you want also disable the
official virt-builder repo.  This will give you complete control over
what images get built.  Have a look at the files in
/etc/virt-builder/repos.d, and the man page.


Richard Jones, Virtualization Group, Red Hat
Read my programming and virtualization blog:
libguestfs lets you edit virtual machines.  Supports shell scripting,
bindings from many languages.