[libvirt] [dbus RFC 11/11] main: add support for all libvirt drivers

Pavel Hrdina phrdina at redhat.com
Tue Jan 23 11:37:53 UTC 2018


On Tue, Jan 23, 2018 at 10:12:26AM +0000, Daniel P. Berrange wrote:
> On Mon, Jan 22, 2018 at 06:16:09PM +0100, Pavel Hrdina wrote:
> > Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
> > ---
> >  src/main.c | 26 ++++++++++++++++++++++----
> >  1 file changed, 22 insertions(+), 4 deletions(-)
> > 
> > diff --git a/src/main.c b/src/main.c
> > index 14c7c18..6421919 100644
> > --- a/src/main.c
> > +++ b/src/main.c
> > @@ -85,13 +85,31 @@ struct virtDBusDriver {
> >  };
> >  
> >  static const struct virtDBusDriver sessionDrivers[] = {
> > -    { "qemu:///session",    "/org/libvirt/qemu" },
> > -    { "test:///default",    "/org/libvirt/test" },
> > +    { "qemu:///session",            "/org/libvirt/qemu" },
> > +    { "test:///default",            "/org/libvirt/test" },
> > +    { "uml:///session",             "/org/libvirt/uml" },
> > +    { "vbox:///session",            "/org/libvirt/vbox" },
> > +    { "vmwarefusion:///session",    "/org/libvirt/vmwarefusion" },
> > +    { "vmwareplayer:///session",    "/org/libvirt/vmwareplayer" },
> > +    { "vmwarews:///session",        "/org/libvirt/vmwarews" },
> >  };
> >  
> >  static const struct virtDBusDriver systemDrivers[] = {
> > -    { "qemu:///system",     "/org/libvirt/qemu" },
> > -    { "test:///default",    "/org/libvirt/test" },
> > +    { "XenApi://localhost/",    "/org/libvirt/XenApi" },
> 
> Hmm, lowercase  'xenapi' would match all other paths, but uppercase
> matches the URI scheme.

There is another "issue" with the naming, best practices for D-Bus
object names is to have the first letter uppercase, e.g.
"/org/libvirt/Qemu", but that feels strange.

> > +    { "bhyve:///system",        "/org/libvirt/bhyve" },
> > +    { "esx://localhost/",       "/org/libvirt/esx" },
> 
> Not sure this is useful, as I don't think there's any practical way
> to manage ESX from the host it runs on, as that would imply being
> able to run custom software inside ESX.
> 
> > +    { "gsx://localhost/",       "/org/libvirt/gsx" },
> > +    { "hyperv://localhost/",    "/org/libvirt/hyperv" },
> 
> I don't think this is useful either.
> 
> > +    { "lxc:///",                "/org/libvirt/lxc" },
> > +    { "openvz:///system",       "/org/libvirt/openvz" },
> > +    { "phyp://localhost/",      "/org/libvirt/phyp" },
> 
> IIUC, phyp is also always a remotely executing driver, which needs
> to ssh into the hypervisor.
> 
> > +    { "qemu:///system",         "/org/libvirt/qemu" },
> > +    { "test:///default",        "/org/libvirt/test" },
> > +    { "uml:///system",          "/org/libvirt/uml" },
> > +    { "vbox:///system",         "/org/libvirt/vbox" },
> > +    { "vpx://localhost/",       "/org/libvirt/vpx" },
> 
> Same as ESX - remote only.

I've basically included all the drivers because I don't know how
exactly some of them works.  I'm OK with dropping the ones that are
not useful (esx, gsx, vpx, hyperv and phyp).

I'll send a v2 of this patch.

Thanks,

Pavel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20180123/4caed4f1/attachment-0001.sig>


More information about the libvir-list mailing list