There are few suggestions we are getting for our vagrant boxes here are some of them:
Add a cdrom device to the boxes (makes installing vbox guest additions from ISO easier)
Discussed in the 16 December meeting - punted to after new year but generally agreed to add a CD-Rom device to the box rather than depend on Vagrantfile.
As I can find the details for this change, CD ROM addition depends on the VM definition, which is something we do not control from the image itself. It has to be done either in the Vagrantfile or in the Virtualbox itself.
I have used Virtualbox 5.0.12 on a Mac, and found the easiest way is to halt the vm, and manually add the drive from the settings.
Could we not just add the vagrantfile directives into the embedded vagrantfile that is delivered with each box?
I originally thought I had code already in Factory to enable this. I do not. The code I was thinking of is for VMWare OVAs, not the VirtualBox OVAs that are used as the basis of the Vagrant box.
I'll need some more time to sort this out. Apologies.
Here is the roughly equivalent change for VMWare:
Essentially, you need to look at the OVA XML of a VM with a CDROM compared to one without, and construct the needed conditional code to add in the CDROM XML in response to a runtime configuration flag. This would end up living in the VirtualBox portion of the OVA plugin.
This isn't terribly difficult but it's a bit time consuming.
@imcleod What do you think of this: https://github.com/jasonbrooks/imagefactory/commit/fab77b7824167ea7bfc6cd51979030ffa8e6db97
I experimented with the route you took and wasn't getting it working, but this is working for me. It adds an empty optical drive as a slave to the existing controller. If it'd be better to add another controller for this, that should be doable, too.
for discussion, I created this PR: https://github.com/redhat-imaging/imagefactory/pull/392
Metadata Update from @dustymabe:
- Issue tagged with: vagrant
to comment on this ticket.