|
1234567891011121314151617181920212223242526272829303132 |
- from __future__ import absolute_import
-
- from graphviz import Digraph
- import subprocess
- import os
- import signal
-
- pid = None
-
-
- def show(executor, port=9997):
- print("Generating graph figure")
- dot = Digraph()
- dot.format = 'png'
- for node in executor.topo_order:
- dot.node(str(node.id), node.name)
- print(node.desc)
- if node.inputs:
- for n in node.inputs:
- dot.edge(str(n.id), str(node.id))
- print(dot.source)
- dot.render('python/graphboard/output')
- print("Starting server..")
- cmd = 'cd python/graphboard; python -m SimpleHTTPServer '+str(port)
- pro = subprocess.Popen(cmd, shell=True, preexec_fn=os.setsid)
- global pid
- pid = pro.pid
-
-
- def close():
- global pid
- os.killpg(pid, signal.SIGTERM)
|