def try_start(): if processtools.is_running(): print "Node is already running" return 1 with daemon.DaemonContext(): main() return 0
def main_menu(): cls() a=XMLJobManager() status=a.listByStatus() running=processtools.is_running() if running==False: idle="" elif status[1]==0: idle="(idle)" else: idle="(processing)" httprunning=processtools.is_http_running() print "(c) 2011 Node Styk.Tv v0.2 ", version.commit, " (", version.date+")" print "Node ID:", version.nodeid print "IP: ", pwdtools.getMainIp(), " (", pwdtools.getIfaceType()+")" print print "Node is running: ", running, idle, " HTTP server is running: ", httprunning print "WORKFLOWS: ", status[0], " pending, ", status[1], " processing, ", status[2], " finished, ", status[3], " failed" print print "1) Network settings" print "2) Change root password" print "3) Change node password" if running: print "4) Stop node" else: print "5) Start node" if os.path.exists("/home/node/styk.tv/update.sh"): print "6) Update node" if os.path.exists(Config.CONFIGDIR+"/node.log"): print "7) Show current log" print "0) Exit" print sys.stdout.write("Enter choice: ") return sys.stdin.readline().strip()
def printStatus(out, checkcpu): doc=getDOMImplementation().createDocument(None, "status", None) node=doc.createElement("node") a=XMLJobManager() status=a.listByStatus() node.setAttribute("running", str(is_running())) node.setAttribute("pending", str(status[0])) node.setAttribute("processing", str(status[1])) node.setAttribute("finished", str(status[2])) node.setAttribute("failed", str(status[3])) doc.documentElement.appendChild(node) mem=doc.createElement("memory") phy=psutil.phymem_usage() virt=psutil.virtmem_usage() mem.setAttribute("total_physical", str(phy.total)) mem.setAttribute("avail_physical", str(phy.total-phy.used)) mem.setAttribute("total_virtual", str(virt.total)) mem.setAttribute("avail_virtual", str(virt.total-virt.used)) doc.documentElement.appendChild(mem) if checkcpu: cpu=doc.createElement("cpu") cpu.setAttribute("usage", str(psutil.cpu_percent(3))) doc.documentElement.appendChild(cpu) lsl=LocalStoreList() for disk in lsl.disks: d=doc.createElement("disk") d.setAttribute("guid", disk.uuid) d.setAttribute("online", str(disk.online)) d.setAttribute('freespace', str(disk.freespace)) doc.documentElement.appendChild(d) doc.writexml(out)
def foreground_run(): if processtools.is_running(): print "Node is already running" return 1 main() return 0
def check_running(): ret=3 if processtools.is_running(): ret=0 return ret
def try_stop(): if not processtools.is_running(): print "Node is not running" return 1 processtools.stop() return 0