Browse Source

tornado: update setup scripts.

INADA Naoki 12 years ago
parent
commit
d0a53a6bab
3 changed files with 47 additions and 33 deletions
  1. 11 16
      tornado/setup.py
  2. 25 0
      tornado/setup_py3.py
  3. 11 17
      tornado/setup_pypy.py

+ 11 - 16
tornado/setup.py

@@ -1,30 +1,25 @@
 import subprocess
 import subprocess
-import sys
 import setup_util
 import setup_util
-import os
 from os.path import expanduser
 from os.path import expanduser
 
 
-home = expanduser("~")
-cwd = "%s/FrameworkBenchmarks/tornado" % home
+python = expanduser('~/FrameworkBenchmarks/installs/py2/bin/python')
+cwd = expanduser('~/FrameworkBenchmarks/tornado')
+proc = None
 
 
 
 
 def start(args):
 def start(args):
+    global proc
     setup_util.replace_text(
     setup_util.replace_text(
         cwd + "/server.py", "localhost", args.database_host)
         cwd + "/server.py", "localhost", args.database_host)
 
 
-    subprocess.Popen("python %s/FrameworkBenchmarks/tornado/server.py --port=8080 --logging=error" % home, shell=True, cwd=cwd)
+    proc = subprocess.Popen(
+        python + " server.py --port=8080 --logging=error",
+        shell=True, cwd=cwd)
     return 0
     return 0
 
 
-
 def stop():
 def stop():
-    p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
-    out, err = p.communicate()
-    for line in out.splitlines():
-        if 'server.py' in line:
-            #try:
-            pid = int(line.split(None, 2)[1])
-            os.kill(pid, 9)
-            #except OSError:
-            #    pass
-
+    global proc
+    if proc:
+        proc.terminate()
+        proc = None
     return 0
     return 0

+ 25 - 0
tornado/setup_py3.py

@@ -0,0 +1,25 @@
+import subprocess
+import setup_util
+from os.path import expanduser
+
+python = expanduser('~/FrameworkBenchmarks/installs/py3/bin/python')
+cwd = expanduser('~/FrameworkBenchmarks/tornado')
+proc = None
+
+
+def start(args):
+    global proc
+    setup_util.replace_text(
+        cwd + "/server.py", "localhost", args.database_host)
+
+    proc = subprocess.Popen(
+        python + " server.py --port=8080 --logging=error",
+        shell=True, cwd=cwd)
+    return 0
+
+def stop():
+    global proc
+    if proc:
+        proc.terminate()
+        proc = None
+    return 0

+ 11 - 17
tornado/setup_pypy.py

@@ -1,31 +1,25 @@
 import subprocess
 import subprocess
-import sys
 import setup_util
 import setup_util
-import os
 from os.path import expanduser
 from os.path import expanduser
 
 
-home = expanduser("~")
-cwd = "%s/FrameworkBenchmarks/tornado" % home
-pypy = "%s/FrameworkBenchmarks/installs/pypy-2.0.2/bin/pypy" % home
+python = expanduser('~/FrameworkBenchmarks/installs/pypy/bin/python')
+cwd = expanduser('~/FrameworkBenchmarks/tornado')
+proc = None
 
 
 
 
 def start(args):
 def start(args):
+    global proc
     setup_util.replace_text(
     setup_util.replace_text(
         cwd + "/server.py", "localhost", args.database_host)
         cwd + "/server.py", "localhost", args.database_host)
 
 
-    subprocess.Popen(pypy + " %s/FrameworkBenchmarks/tornado/server.py --port=8080 --logging=error" % home, shell=True, cwd=cwd)
+    proc = subprocess.Popen(
+        python + " server.py --port=8080 --logging=error",
+        shell=True, cwd=cwd)
     return 0
     return 0
 
 
-
 def stop():
 def stop():
-    p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
-    out, err = p.communicate()
-    for line in out.splitlines():
-        if 'server.py' in line:
-            #try:
-            pid = int(line.split(None, 2)[1])
-            os.kill(pid, 9)
-            #except OSError:
-            #    pass
-
+    global proc
+    if proc:
+        proc.terminate()
+        proc = None
     return 0
     return 0