X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Fcodemux.py;h=c3a6a8f1ac71b8e3457b8ce58cb5831c41e10c72;hb=c6bcc5ecda35a373b8232a5015a6209a63e5c825;hp=6ac314d8696e08764b1d35463dfb19a887a01f68;hpb=e087afb94cd1c83b12430518fbf53299458d8028;p=nodemanager.git diff --git a/plugins/codemux.py b/plugins/codemux.py index 6ac314d..c3a6a8f 100644 --- a/plugins/codemux.py +++ b/plugins/codemux.py @@ -5,7 +5,7 @@ import logger import os -import vserver +import libvirt from config import Config CODEMUXCONF="/etc/codemux/codemux.conf" @@ -54,7 +54,7 @@ def GetSlivers(data, config, plc = None): try: # Check to see if sliver is running. If not, continue - if vserver.VServer(sliver['name']).is_running(): + if isLXCDomRunning(sliver['name']): # Check if new or needs updating if (sliver['name'] not in slicesinconf.keys()) \ or (params not in slicesinconf.get(sliver['name'], [])): @@ -168,3 +168,14 @@ def stopService(): logger.log("codemux: Stopping codemux service") logger.log_call(["/etc/init.d/codemux", "stop", ]) logger.log_call(["/sbin/chkconfig", "codemux", "off"]) + +def isLXCDomRunning(domName): + try: + running = False + conn = libvirt.open('lxc://') + dom = conn.lookupByName(domName) + running = dom.info()[0] == libvirt.VIR_DOMAIN_RUNNING + finally: + conn.close() + return running +