Add Image capability to KVM compute resources

Hello,

I've been playing with packer project (www.packer.io) to build
images for various Cloud / Virtualization provider.
I think it's really interesting to be able to provision new host
with plain libvirt/kvm without waiting for the preseed / kickstart
installation time.

So I would like to start on how could Foreman implement it.
The main problem is I think that we lack of some "metadata feature" for
the VM to setup it self.

What I see as various from VM to VM with the same "base image":

  • FQDN
  • Puppetmaster / Chef-Server URL
  • chef-server validation certificate (for chef-server integration)

I was thinking that maybe we could extend the ability to render various
template (like we do for preseed) depending of the IP of the host making
the HTTP GET.
Like that we would have a generic metadata server using Foreman.

I have also, in my use-case some specific needs:

  • I generate the network configuration file before creating the host (not
    using chef for that). It would be great if foreman could server that kind
    of thing maybe as part of the notes related to the host ?

The other way arround would be to use the boot line to give all information
needed. But giving in the boot line for instance a validation.pem
certificate wouldn't be possible I think ?

Thoughts ?