fog / fog-libvirt

libvirt provider for fog
MIT License
16 stars 42 forks source link

Allow floppy disks in boot order #21

Closed anonym closed 8 years ago

anonym commented 8 years ago

At the moment we'll abort with an error if some domain exists and has fd in its boot order.

plribeiro3000 commented 8 years ago

@fred-a-kemp Can you specify this a little better? I'm afraid i'm not actually following the idea.

anonym commented 8 years ago

Sorry for being so vague! Please read the ticket description here for some details and context: https://labs.riseup.net/code/issues/11155

Basically what we have seen is that just having a domain defined that has a floppy disk in its boot order through the <os> element is enough to make fog-libvirt (at least as used by vagrant-libvirt) error out. For instance, a domain with something like this is enough to tirgger the error:

<os>
  <type arch='x86_64' machine='pc-0.15'>hvm</type>
  <boot dev='cdrom'/>
  <boot dev='fd'/>
  <boot dev='hd'/>
</os>

Of course, given what is passed to verify_boot_order(), it does not happen when adding e.g. <boot order='1'/> element as a child to the floppy's <disk> element -- that mechanism of setting the boot order is completely ignored by verify_boot_order(). So, given that it isn't complete any way, perhaps an alternative solution is to just remove verify_boot_order() completely and depend on libvirt itself to do the checking? I mean, if fog-libvirt tries to create a domain with an invalid order, then libvirt will error out; and for the "opposite" case, when fog-libvirt "imports" existing domains, we can assume that libvirt has done that checking when the domain was defined.

plribeiro3000 commented 8 years ago

Got it. I would say that a validation on fog-libvirt side should not do any harm. =)

Open a PR so we can see about it. =)

anonym commented 8 years ago

Open a PR so we can see about it. =)

Done!