From d05f38cf93dde2f7a20c6814a04d0df5b88718b1 Mon Sep 17 00:00:00 2001 From: Max Pivo Date: Thu, 27 Feb 2020 12:17:33 -0800 Subject: [PATCH] Adding Libvirt Module which displays count of active libvirt VMs. requires 'libvbirt' --- bumblebee/modules/libvirtvms.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 bumblebee/modules/libvirtvms.py diff --git a/bumblebee/modules/libvirtvms.py b/bumblebee/modules/libvirtvms.py new file mode 100644 index 0000000..b6fc4c9 --- /dev/null +++ b/bumblebee/modules/libvirtvms.py @@ -0,0 +1,30 @@ +"""Displays count of running libvirt VMs. +Required the following python packages: + * libvirt + * sys +""" +import sys +import libvirt +import bumblebee.input +import bumblebee.output +import bumblebee.engine + + +class Module(bumblebee.engine.Module): + def __init__(self, engine, config): + super(Module, self).__init__(engine, config, + bumblebee.output.Widget(full_text=self.status) + ) + self._status = self.status + engine.input.register_callback(self, button=bumblebee.input.LEFT_MOUSE, + cmd="virt-manager") + + def update(self, widgets): + self._status = self.status + + def status(self, _): + conn = None + conn = libvirt.openReadOnly(None) + if conn == None: + print ('Failed to open connection to the hypervisor') + return "VMs %s" % (conn.numOfDomains())