[virt-tools-list] [virt-manager PATCH] Add bhyve support

Roman Bogorodskiy bogorodskiy at gmail.com
Thu Apr 10 04:12:32 UTC 2014


  Cole Robinson wrote:

> On 04/07/2014 11:43 AM, Michal Privoznik wrote:
> > On 07.04.2014 17:12, Cole Robinson wrote:
> >> On 04/04/2014 02:43 PM, Roman Bogorodskiy wrote:
> >>> Allow connection to bhyve using bhyve:///system URI.
> >>> ---
> >>>   virtManager/connect.py | 8 ++++++--
> >>>   1 file changed, 6 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/virtManager/connect.py b/virtManager/connect.py
> >>> index b779c75..bc6d56d 100644
> >>> --- a/virtManager/connect.py
> >>> +++ b/virtManager/connect.py
> >>> @@ -32,7 +32,8 @@ from virtManager.baseclass import vmmGObjectUI
> >>>   (HV_QEMU,
> >>>   HV_XEN,
> >>>   HV_LXC,
> >>> -HV_QEMU_SESSION) = range(4)
> >>> +HV_QEMU_SESSION,
> >>> +HV_BHYVE) = range(5)
> >>>
> >>>   (CONN_SSH,
> >>>   CONN_TCP,
> >>> @@ -153,6 +154,7 @@ class vmmConnect(vmmGObjectUI):
> >>>           model.append(["Xen"])
> >>>           model.append(["LXC (Linux Containers)"])
> >>>           model.append(["QEMU/KVM user session"])
> >>> +        model.append(["Bhyve"])
> >>>           combo.set_model(model)
> >>>           uiutil.set_combo_text_column(combo, 0)
> >>>
> >>> @@ -364,6 +366,8 @@ class vmmConnect(vmmGObjectUI):
> >>>               hvstr = "xen"
> >>>           elif hv == HV_QEMU or hv == HV_QEMU_SESSION:
> >>>               hvstr = "qemu"
> >>> +        elif hv == HV_BHYVE:
> >>> +            hvstr = "bhyve"
> >>>           else:
> >>>               hvstr = "lxc"
> >>>
> >>> @@ -385,7 +389,7 @@ class vmmConnect(vmmGObjectUI):
> >>>               hoststr += addrstr + "/"
> >>>
> >>>           uri = hvstr + hoststr
> >>> -        if hv == HV_QEMU:
> >>> +        if hv in (HV_QEMU, HV_BHYVE):
> >>>               uri += "system"
> >>>           elif hv == HV_QEMU_SESSION:
> >>>               uri += "session"
> >>>
> >>
> >> Patch is fine, but can we find a way to only show this option in the UI where
> >> it has a chance of actually working (bsd)? 99% of virt-manager users are on
> >> linux where bhyve isn't available. But I don't know a good way to check. Also
> >> if we are on bsd maybe we should select Bhyve by default, something to
> >> consider at least.
> >>
> > 
> > Well, you can use the driver remotely, I mean,
> > bhyve+ssh://<some_other_host>/system even from linux.
> > 
> 
> True. But honestly for those users and for the fact that bhyve libvirt support
> is very new, I'd just say use virt-manager --connect URI.
> 
> I tend to think of that dialog as saying 'these are the libvirt drivers that
> virt-manager is expected to work well with'. bhyve may fit that description,
> but the maintainers aren't likely to start testing it anytime soon since we
> all use linux. And adding that option by default is irrelevant to 99% of
> current users.
> 
> I'm happy to provide a way to show bhyve, either through a local bsd check
> (maybe platform.platform()) or a 'python setup.py configure' option to set the
> driver list which bsd packages would use, but I don't think we should add the
> option unconditionally.

Generally, I'd love to see the Bhyve option is the default list one
day, but I agree with your point that's it's very new and probably it's
a little to early now.

I'll send a patch that uses 'python setup.py configure' approach you
mentioned, as platform.platform() way will not work for remote
connections, as Michal pointed out.   

Roman Bogorodskiy




More information about the virt-tools-list mailing list