[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Adding Vagrant support to debian cloud images



Hi

I had a look this week on how to add to Vagrant support to debian cloud
images.
The box users have been regularly complaining about a lack of up to
dates box, and building and uploading for 2 hypervisors * 3
distributions is a bit overkill to do at home on a ADSL connection.

I had a look at the build system Waldi grafted on fai-disk-image, and it
looks to me it will be difficult to reuse the CLOUD fai class, as
Vagrant have different needs.

Two things came to my mind first:

* vagrant is fine having the ssh host keys already existing, as it
connects with ssh ignoring host key verification.
I would prefer to have these host keys in place, as it speed up the
first boot.
But we delete those keys in the LAST class, which is unconditionally added
in
https://salsa.debian.org/cloud-team/debian-cloud-images/blob/master/src/debian_cloud_images/cli/build.py#L264

* vagrant needs a 'vagrant' user, but adding this user make the pytests
fails. I can fix the pytest, by adding the user to the list, but then
we're not testing that the Vagrant user ended up in a cloud image ...

So I am thinking of making a VAGRANT class picking what I need from the
CLOUD and LAST class, and use LINUX_IMAGE_BASE and GRUB_CLOUD_AMD64,

rather than adding a lot of "if 'vagrant' not in self.classes"
everywhere, which would make the code more complex for everyone,
included those not interested in Vagrant.


Manu







Reply to: