2020-04-13 13:49:38 +02:00
|
|
|
"""Displays count of running libvirt VMs.
|
|
|
|
Required the following python packages:
|
|
|
|
* libvirt
|
|
|
|
"""
|
2020-04-13 13:52:15 +02:00
|
|
|
|
2020-04-13 13:49:38 +02:00
|
|
|
import sys
|
|
|
|
import libvirt
|
|
|
|
|
2020-04-13 13:52:15 +02:00
|
|
|
import core.module
|
|
|
|
import core.widget
|
|
|
|
import core.input
|
|
|
|
import core.decorators
|
2020-04-13 13:49:38 +02:00
|
|
|
|
2020-04-13 13:52:15 +02:00
|
|
|
class Module(core.module.Module):
|
|
|
|
@core.decorators.every(seconds=10)
|
|
|
|
def __init__(self, config):
|
|
|
|
super().__init__(config, core.widget.Widget(self.status))
|
2020-04-13 13:49:38 +02:00
|
|
|
|
2020-04-13 13:52:15 +02:00
|
|
|
core.input.register(self, button=core.input.LEFT_MOUSE,
|
|
|
|
cmd='virt-manager')
|
2020-04-13 13:49:38 +02:00
|
|
|
|
|
|
|
def status(self, _):
|
|
|
|
conn = libvirt.openReadOnly(None)
|
|
|
|
if conn == None:
|
2020-04-13 13:52:15 +02:00
|
|
|
return 'Failed to open connection to the hypervisor'
|
|
|
|
return 'VMs %s' % (conn.numOfDomains())
|
|
|
|
|
|
|
|
# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4
|