Przeglądaj źródła

18938 Break logging into individual files

Previously, all "logging" was sent to standard out, and we would
capture that in a file. The problem with this is that all of the
frameworks would be logged to the same file, resulting in an
extremely large log.

This change causes each individual framework to create a log file
in the results folder, and captures the standard output there.
Additionally, each setup file now has start/stop functions that
require a 'logfile' argument. Initially, basically all of the tests
do not use this file, but this gives the possibility to attach
the logfile as the capture for stderr/stdout on the subprocesses
spawned when a server is spun up.

Similarly, 'logfile.write()' will allow a developer to enter logs
directly for debug or general purposes.
Mike Smith 12 lat temu
rodzic
commit
5e8b7a1d04
100 zmienionych plików z 207 dodań i 207 usunięć
  1. 2 2
      HttpListener/setup.py
  2. 2 2
      aspnet-stripped/setup_iis.py
  3. 2 2
      aspnet/setup_iis.py
  4. 2 2
      aspnet/setup_nginx.py
  5. 2 2
      aspnet/setup_xsp.py
  6. 2 2
      beego/setup.py
  7. 2 2
      bottle/setup.py
  8. 2 2
      bottle/setup_nginxuwsgi.py
  9. 2 2
      bottle/setup_py3.py
  10. 2 2
      bottle/setup_pypy.py
  11. 2 2
      cake/setup.py
  12. 2 2
      compojure/setup.py
  13. 2 2
      cowboy/setup_erlang.py
  14. 2 2
      cpoll_cppsp/setup.py
  15. 2 2
      dancer/setup.py
  16. 2 2
      dart-start/setup.py
  17. 2 2
      dart-stream/setup.py
  18. 2 2
      dart/setup.py
  19. 2 2
      django/setup.py
  20. 2 2
      django/setup_pg.py
  21. 2 2
      django/setup_py3.py
  22. 2 2
      dropwizard/setup.py
  23. 2 2
      elli/setup_erlang.py
  24. 2 2
      express/setup.py
  25. 2 2
      falcon/setup.py
  26. 2 2
      falcon/setup_py3.py
  27. 2 2
      falcon/setup_pypy.py
  28. 2 2
      falcore/setup.py
  29. 2 2
      finagle/setup.py
  30. 2 2
      flask/setup.py
  31. 2 2
      flask/setup_nginxuwsgi.py
  32. 2 2
      flask/setup_py3.py
  33. 2 2
      flask/setup_pypy.py
  34. 6 6
      gemini/setup.py
  35. 2 2
      go/setup.py
  36. 2 2
      grails/setup.py
  37. 2 2
      grizzly-bm/setup.py
  38. 2 2
      grizzly-jersey/setup.py
  39. 2 2
      hapi/setup.py
  40. 2 2
      http-kit/setup.py
  41. 2 2
      jester/setup.py
  42. 2 2
      kelp/setup.py
  43. 2 2
      lapis/setup.py
  44. 2 2
      lift-stateless/setup.py
  45. 2 2
      luminus/setup.py
  46. 2 2
      mojolicious/setup.py
  47. 2 2
      nancy/setup_iis.py
  48. 2 2
      nancy/setup_libevent.py
  49. 2 2
      nancy/setup_nginx.py
  50. 2 2
      nancy/setup_xsp.py
  51. 2 2
      netty/setup.py
  52. 2 2
      nodejs/setup.py
  53. 2 2
      onion/setup.py
  54. 2 2
      openresty/setup.py
  55. 2 2
      php-codeigniter/setup.py
  56. 2 2
      php-fuel/setup.py
  57. 2 2
      php-kohana/setup.py
  58. 2 2
      php-laravel/setup.py
  59. 2 2
      php-lithium/setup.py
  60. 2 2
      php-micromvc/setup.py
  61. 2 2
      php-phalcon-micro/setup.py
  62. 2 2
      php-phalcon/setup.py
  63. 2 2
      php-phpixie/setup.py
  64. 2 2
      php-senthot/setup.py
  65. 2 2
      php-silex-orm/setup.py
  66. 2 2
      php-silex/setup.py
  67. 2 2
      php-silex/setup_raw.py
  68. 2 2
      php-silica/setup.py
  69. 2 2
      php-slim/setup.py
  70. 2 2
      php-symfony2-stripped/setup.py
  71. 2 2
      php-symfony2/setup.py
  72. 2 2
      php-yaf/setup.py
  73. 2 2
      php/setup.py
  74. 2 2
      phreeze/setup.py
  75. 2 2
      plack/setup.py
  76. 2 2
      plain/setup.py
  77. 2 2
      play-activate-mysql/setup.py
  78. 2 2
      play-java-jpa/setup.py
  79. 2 2
      play-java/setup.py
  80. 2 2
      play-scala-mongodb/setup.py
  81. 2 2
      play-scala/setup.py
  82. 2 2
      play-slick/setup.py
  83. 2 2
      play1/setup.py
  84. 2 2
      play1siena/setup.py
  85. 2 2
      rack/setup_jruby.py
  86. 2 2
      rack/setup_ruby.py
  87. 2 2
      racket-ws/setup.py
  88. 2 2
      rails-stripped/setup_jruby.py
  89. 2 2
      rails-stripped/setup_ruby.py
  90. 2 2
      rails/setup_jruby.py
  91. 2 2
      rails/setup_ruby.py
  92. 2 2
      restexpress/setup.py
  93. 2 2
      revel-jet/setup.py
  94. 2 2
      revel-qbs/setup.py
  95. 5 5
      revel/setup.py
  96. 2 2
      ringojs-convenient/setup.py
  97. 2 2
      ringojs/setup.py
  98. 2 2
      scalatra/setup.py
  99. 2 2
      servicestack/setup_iis.py
  100. 2 2
      servicestack/setup_nginx.py

+ 2 - 2
HttpListener/setup.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 1
     return 1
   
   
@@ -14,7 +14,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 0
     return 0
   
   

+ 2 - 2
aspnet-stripped/setup_iis.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 1
     return 1
   
   
@@ -14,7 +14,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 0
     return 0
   
   

+ 2 - 2
aspnet/setup_iis.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 1
     return 1
   
   
@@ -14,7 +14,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 0
     return 0
   
   

+ 2 - 2
aspnet/setup_nginx.py

@@ -6,7 +6,7 @@ import os
 root = os.getcwd() + "/aspnet"
 root = os.getcwd() + "/aspnet"
 app = root + "/src"
 app = root + "/src"
 
 
-def start(args):
+def start(args, logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 1
     return 1
   
   
@@ -30,7 +30,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 0
     return 0
   
   

+ 2 - 2
aspnet/setup_xsp.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 1
     return 1
   
   
@@ -18,7 +18,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 0
     return 0
   
   

+ 2 - 2
beego/setup.py

@@ -3,7 +3,7 @@ import subprocess
 import sys
 import sys
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.call("set GOPATH=C:\\FrameworkBenchmarks\\beego&&go get ./...", shell=True, cwd="beego")
     subprocess.call("set GOPATH=C:\\FrameworkBenchmarks\\beego&&go get ./...", shell=True, cwd="beego")
     subprocess.Popen("setup.bat", shell=True, cwd="beego")
     subprocess.Popen("setup.bat", shell=True, cwd="beego")
@@ -11,7 +11,7 @@ def start(args):
   subprocess.call("go get ./...", shell=True, cwd="beego")
   subprocess.call("go get ./...", shell=True, cwd="beego")
   subprocess.Popen("go run src/hello/hello.go".rsplit(" "), cwd="beego")
   subprocess.Popen("go run src/hello/hello.go".rsplit(" "), cwd="beego")
   return 0
   return 0
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.call("taskkill /f /im go.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im go.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im hello.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im hello.exe > NUL", shell=True)

+ 2 - 2
bottle/setup.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("bottle/app.py", "DBHOSTNAME", args.database_host)
     setup_util.replace_text("bottle/app.py", "DBHOSTNAME", args.database_host)
     proc = subprocess.Popen([
     proc = subprocess.Popen([
@@ -22,7 +22,7 @@ def start(args):
         cwd="bottle")
         cwd="bottle")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
bottle/setup_nginxuwsgi.py

@@ -7,7 +7,7 @@ bin_dir = os.path.expanduser('~/FrameworkBenchmarks/installs/py2/bin')
 config_dir = os.path.expanduser('~/FrameworkBenchmarks/config')
 config_dir = os.path.expanduser('~/FrameworkBenchmarks/config')
 NCPU = multiprocessing.cpu_count()
 NCPU = multiprocessing.cpu_count()
 
 
-def start(args):
+def start(args, logfile):
     setup_util.replace_text("bottle/app.py", "DBHOSTNAME", args.database_host)
     setup_util.replace_text("bottle/app.py", "DBHOSTNAME", args.database_host)
     try:
     try:
         subprocess.check_call('sudo /usr/local/nginx/sbin/nginx -c ' +
         subprocess.check_call('sudo /usr/local/nginx/sbin/nginx -c ' +
@@ -21,7 +21,7 @@ def start(args):
     except subprocess.CalledProcessError:
     except subprocess.CalledProcessError:
         return 1
         return 1
 
 
-def stop():
+def stop(logfile):
     subprocess.call('sudo /usr/local/nginx/sbin/nginx -s stop', shell=True)
     subprocess.call('sudo /usr/local/nginx/sbin/nginx -s stop', shell=True)
     subprocess.call(bin_dir + '/uwsgi --ini ' + config_dir + '/uwsgi_stop.ini', shell=True)
     subprocess.call(bin_dir + '/uwsgi --ini ' + config_dir + '/uwsgi_stop.ini', shell=True)
     return 0
     return 0

+ 2 - 2
bottle/setup_py3.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("bottle/app.py", "DBHOSTNAME", args.database_host)
     setup_util.replace_text("bottle/app.py", "DBHOSTNAME", args.database_host)
     proc = subprocess.Popen([
     proc = subprocess.Popen([
@@ -22,7 +22,7 @@ def start(args):
         cwd="bottle")
         cwd="bottle")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
bottle/setup_pypy.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("bottle/app.py", "DBHOSTNAME", args.database_host)
     setup_util.replace_text("bottle/app.py", "DBHOSTNAME", args.database_host)
     proc = subprocess.Popen([
     proc = subprocess.Popen([
@@ -22,7 +22,7 @@ def start(args):
         cwd="bottle")
         cwd="bottle")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
cake/setup.py

@@ -7,7 +7,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("cake/app/Config/database.php", "'host' => '.*',", "'host' => '" + args.database_host + "',")
   setup_util.replace_text("cake/app/Config/database.php", "'host' => '.*',", "'host' => '" + args.database_host + "',")
   setup_util.replace_text("cake/deploy/cake", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("cake/deploy/cake", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("cake/deploy/cake", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("cake/deploy/cake", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
@@ -28,7 +28,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.call('appcmd delete site PHP', shell=True)
       subprocess.call('appcmd delete site PHP', shell=True)

+ 2 - 2
compojure/setup.py

@@ -3,7 +3,7 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("compojure/hello/src/hello/handler.clj", ":subname \"//.*:3306", ":subname \"//" + args.database_host + ":3306")
   setup_util.replace_text("compojure/hello/src/hello/handler.clj", ":subname \"//.*:3306", ":subname \"//" + args.database_host + ":3306")
 
 
   try:
   try:
@@ -14,7 +14,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     return 0
     return 0

+ 2 - 2
cowboy/setup_erlang.py

@@ -2,7 +2,7 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("cowboy/src/hello_world_app.erl", "\"benchmarkdbpass\", \".*\", 3306", "\"benchmarkdbpass\", \"" + args.database_host + "\", 3306")
   setup_util.replace_text("cowboy/src/hello_world_app.erl", "\"benchmarkdbpass\", \".*\", 3306", "\"benchmarkdbpass\", \"" + args.database_host + "\", 3306")
 
 
   try:
   try:
@@ -12,7 +12,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("killall beam.smp", shell=True, cwd="/usr/bin")
     subprocess.check_call("killall beam.smp", shell=True, cwd="/usr/bin")
     return 0
     return 0

+ 2 - 2
cpoll_cppsp/setup.py

@@ -3,13 +3,13 @@ import sys
 import os
 import os
 import setup_util 
 import setup_util 
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("cpoll_cppsp/www/connectioninfo.H", "\\#define BENCHMARK_DB_HOST \".*\"", "#define BENCHMARK_DB_HOST \"" + args.database_host + "\"")
   setup_util.replace_text("cpoll_cppsp/www/connectioninfo.H", "\\#define BENCHMARK_DB_HOST \".*\"", "#define BENCHMARK_DB_HOST \"" + args.database_host + "\"")
   subprocess.check_call("make", shell=True, cwd="cpoll_cppsp")
   subprocess.check_call("make", shell=True, cwd="cpoll_cppsp")
   subprocess.Popen("./run_application \"$(pwd)\"/www -g g++-4.8 -m /forcedynamic.cppsm", shell=True, cwd="cpoll_cppsp");
   subprocess.Popen("./run_application \"$(pwd)\"/www -g g++-4.8 -m /forcedynamic.cppsm", shell=True, cwd="cpoll_cppsp");
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()
   for line in out.splitlines():
   for line in out.splitlines():

+ 2 - 2
dancer/setup.py

@@ -7,7 +7,7 @@ import getpass
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("dancer/app.pl", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("dancer/app.pl", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("dancer/nginx.conf", "USR", getpass.getuser())
   setup_util.replace_text("dancer/nginx.conf", "USR", getpass.getuser())
   setup_util.replace_text("dancer/nginx.conf", "server unix:.*\/FrameworkBenchmarks", "server unix:" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("dancer/nginx.conf", "server unix:.*\/FrameworkBenchmarks", "server unix:" + home + "/FrameworkBenchmarks")
@@ -18,7 +18,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)

+ 2 - 2
dart-start/setup.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text('dart-start/postgresql.yaml', 'host: .*', 'host: ' + args.database_host)
   setup_util.replace_text('dart-start/postgresql.yaml', 'host: .*', 'host: ' + args.database_host)
   setup_util.replace_text('dart-start/mongodb.yaml', 'host: .*', 'host: ' + args.database_host)
   setup_util.replace_text('dart-start/mongodb.yaml', 'host: .*', 'host: ' + args.database_host)
   try:
   try:
@@ -57,7 +57,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   #
   #
   # stop nginx
   # stop nginx
   #
   #

+ 2 - 2
dart-stream/setup.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text('dart-stream/postgresql.yaml', 'host: .*', 'host: ' + args.database_host)
   setup_util.replace_text('dart-stream/postgresql.yaml', 'host: .*', 'host: ' + args.database_host)
   setup_util.replace_text('dart-stream/mongodb.yaml', 'host: .*', 'host: ' + args.database_host)
   setup_util.replace_text('dart-stream/mongodb.yaml', 'host: .*', 'host: ' + args.database_host)
   try:
   try:
@@ -57,7 +57,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   #
   #
   # stop nginx
   # stop nginx
   #
   #

+ 2 - 2
dart/setup.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text('dart/postgresql.yaml', 'host: .*', 'host: ' + args.database_host)
   setup_util.replace_text('dart/postgresql.yaml', 'host: .*', 'host: ' + args.database_host)
   try:
   try:
     #
     #
@@ -56,7 +56,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   #
   #
   # stop nginx
   # stop nginx
   #
   #

+ 2 - 2
django/setup.py

@@ -10,7 +10,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("django/hello/hello/settings.py", "HOST': '.*'", "HOST': '" + args.database_host + "'")
     setup_util.replace_text("django/hello/hello/settings.py", "HOST': '.*'", "HOST': '" + args.database_host + "'")
     setup_util.replace_text("django/hello/hello/settings.py", "\/home\/ubuntu",  home)
     setup_util.replace_text("django/hello/hello/settings.py", "\/home\/ubuntu",  home)
@@ -27,7 +27,7 @@ def start(args):
         env=env)
         env=env)
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
django/setup_pg.py

@@ -10,7 +10,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("django/hello/hello/settings.py", "HOST': '.*'", "HOST': '" + args.database_host + "'")
     setup_util.replace_text("django/hello/hello/settings.py", "HOST': '.*'", "HOST': '" + args.database_host + "'")
     setup_util.replace_text("django/hello/hello/settings.py", "\/home\/ubuntu",  home)
     setup_util.replace_text("django/hello/hello/settings.py", "\/home\/ubuntu",  home)
@@ -27,7 +27,7 @@ def start(args):
         env=env)
         env=env)
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
django/setup_py3.py

@@ -10,7 +10,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("django/hello/hello/settings.py", "HOST': '.*'", "HOST': '" + args.database_host + "'")
     setup_util.replace_text("django/hello/hello/settings.py", "HOST': '.*'", "HOST': '" + args.database_host + "'")
     setup_util.replace_text("django/hello/hello/settings.py", "\/home\/ubuntu",  home)
     setup_util.replace_text("django/hello/hello/settings.py", "\/home\/ubuntu",  home)
@@ -24,7 +24,7 @@ def start(args):
         cwd="django/hello")
         cwd="django/hello")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
dropwizard/setup.py

@@ -6,7 +6,7 @@ import os
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
     setup_util.replace_text("dropwizard/hello-world.yml", "url: jdbc:mysql://.*/hello_world", "url: jdbc:mysql://" + args.database_host + ":3306/hello_world")
     setup_util.replace_text("dropwizard/hello-world.yml", "url: jdbc:mysql://.*/hello_world", "url: jdbc:mysql://" + args.database_host + ":3306/hello_world")
 
 
     try:
     try:
@@ -15,7 +15,7 @@ def start(args):
         return 0
         return 0
     except subprocess.CalledProcessError:
     except subprocess.CalledProcessError:
         return 1
         return 1
-def stop():
+def stop(logfile):
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()
   for line in out.splitlines():
   for line in out.splitlines():

+ 2 - 2
elli/setup_erlang.py

@@ -2,7 +2,7 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("elli/src/elli_bench_sup.erl", "\"benchmarkdbpass\", \".*\", 3306", "\"benchmarkdbpass\", \"" + args.database_host + "\", 3306")
   setup_util.replace_text("elli/src/elli_bench_sup.erl", "\"benchmarkdbpass\", \".*\", 3306", "\"benchmarkdbpass\", \"" + args.database_host + "\", 3306")
   
   
   try:
   try:
@@ -13,7 +13,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("killall beam.smp", shell=True, cwd="/usr/bin")
     subprocess.check_call("killall beam.smp", shell=True, cwd="/usr/bin")
     return 0
     return 0

+ 2 - 2
express/setup.py

@@ -4,7 +4,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("express/app.js", "mongodb:\/\/.*\/hello_world", "mongodb://" + args.database_host + "/hello_world")
   setup_util.replace_text("express/app.js", "mongodb:\/\/.*\/hello_world", "mongodb://" + args.database_host + "/hello_world")
   setup_util.replace_text("express/app.js", "localhost", args.database_host)
   setup_util.replace_text("express/app.js", "localhost", args.database_host)
 
 
@@ -32,7 +32,7 @@ def npm():
       subprocess.check_call("del package.json", shell=True, cwd="express")
       subprocess.check_call("del package.json", shell=True, cwd="express")
       subprocess.check_call("ren package.json.dist package.json", shell=True, cwd="express")
       subprocess.check_call("ren package.json.dist package.json", shell=True, cwd="express")
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.Popen("taskkill /f /im node.exe > NUL", shell=True)
     subprocess.Popen("taskkill /f /im node.exe > NUL", shell=True)
     return 0
     return 0

+ 2 - 2
falcon/setup.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     proc = subprocess.Popen([
     proc = subprocess.Popen([
         bin_dir + "/gunicorn",
         bin_dir + "/gunicorn",
@@ -21,7 +21,7 @@ def start(args):
         cwd="falcon")
         cwd="falcon")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     out, err = p.communicate()
     out, err = p.communicate()
     for line in out.splitlines():
     for line in out.splitlines():

+ 2 - 2
falcon/setup_py3.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     proc = subprocess.Popen([
     proc = subprocess.Popen([
         bin_dir + "/gunicorn",
         bin_dir + "/gunicorn",
@@ -21,7 +21,7 @@ def start(args):
         cwd="falcon")
         cwd="falcon")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
falcon/setup_pypy.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     proc = subprocess.Popen([
     proc = subprocess.Popen([
         bin_dir + "/gunicorn",
         bin_dir + "/gunicorn",
@@ -21,7 +21,7 @@ def start(args):
         cwd="falcon")
         cwd="falcon")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
falcore/setup.py

@@ -3,7 +3,7 @@ import sys
 import os
 import os
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("falcore/src/framework_benchmarks/falcore.go", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   setup_util.replace_text("falcore/src/framework_benchmarks/falcore.go", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   if os.name == 'nt':
   if os.name == 'nt':
     #subprocess.call("rmdir /s /q pkg\\windows_amd64", shell=True, cwd="go")
     #subprocess.call("rmdir /s /q pkg\\windows_amd64", shell=True, cwd="go")
@@ -15,7 +15,7 @@ def start(args):
   subprocess.call("go get ./...", shell=True, cwd="falcore") 
   subprocess.call("go get ./...", shell=True, cwd="falcore") 
   subprocess.Popen("go run src/framework_benchmarks/falcore.go".rsplit(" "), cwd="falcore")
   subprocess.Popen("go run src/framework_benchmarks/falcore.go".rsplit(" "), cwd="falcore")
   return 0
   return 0
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.call("taskkill /f /im go.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im go.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im falcore.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im falcore.exe > NUL", shell=True)

+ 2 - 2
finagle/setup.py

@@ -4,7 +4,7 @@ import sys
 import time
 import time
 import os
 import os
 
 
-def start(args=None):
+def start(args=None, logfile):
 
 
 
 
     if os.name == 'nt':
     if os.name == 'nt':
@@ -19,7 +19,7 @@ def start(args=None):
 
 
 
 
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.check_call("wmic process where \"CommandLine LIKE '%\\\\sbt\\\\sbt%'\" call terminate")
     subprocess.check_call("wmic process where \"CommandLine LIKE '%\\\\sbt\\\\sbt%'\" call terminate")
   else:
   else:

+ 2 - 2
flask/setup.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
     setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
     proc = subprocess.Popen([
     proc = subprocess.Popen([
@@ -22,7 +22,7 @@ def start(args):
         cwd="flask")
         cwd="flask")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     out, err = p.communicate()
     out, err = p.communicate()
     for line in out.splitlines():
     for line in out.splitlines():

+ 2 - 2
flask/setup_nginxuwsgi.py

@@ -7,7 +7,7 @@ bin_dir = os.path.expanduser('~/FrameworkBenchmarks/installs/py2/bin')
 config_dir = os.path.expanduser('~/FrameworkBenchmarks/config')
 config_dir = os.path.expanduser('~/FrameworkBenchmarks/config')
 NCPU = multiprocessing.cpu_count()
 NCPU = multiprocessing.cpu_count()
 
 
-def start(args):
+def start(args, logfile):
     setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
     setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
     try:
     try:
         subprocess.check_call('sudo /usr/local/nginx/sbin/nginx -c ' +
         subprocess.check_call('sudo /usr/local/nginx/sbin/nginx -c ' +
@@ -21,7 +21,7 @@ def start(args):
     except subprocess.CalledProcessError:
     except subprocess.CalledProcessError:
         return 1
         return 1
 
 
-def stop():
+def stop(logfile):
     subprocess.call('sudo /usr/local/nginx/sbin/nginx -s stop', shell=True)
     subprocess.call('sudo /usr/local/nginx/sbin/nginx -s stop', shell=True)
     subprocess.call(bin_dir + '/uwsgi --ini ' + config_dir + '/uwsgi_stop.ini', shell=True)
     subprocess.call(bin_dir + '/uwsgi --ini ' + config_dir + '/uwsgi_stop.ini', shell=True)
 
 

+ 2 - 2
flask/setup_py3.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
     setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
     proc = subprocess.Popen([
     proc = subprocess.Popen([
@@ -22,7 +22,7 @@ def start(args):
         cwd="flask")
         cwd="flask")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 2 - 2
flask/setup_pypy.py

@@ -9,7 +9,7 @@ NCPU = multiprocessing.cpu_count()
 proc = None
 proc = None
 
 
 
 
-def start(args):
+def start(args, logfile):
     global proc
     global proc
     setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
     setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
     proc = subprocess.Popen([
     proc = subprocess.Popen([
@@ -22,7 +22,7 @@ def start(args):
         cwd="flask")
         cwd="flask")
     return 0
     return 0
 
 
-def stop():
+def stop(logfile):
     global proc
     global proc
     if proc is None:
     if proc is None:
         return 0
         return 0

+ 6 - 6
gemini/setup.py

@@ -6,20 +6,20 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("gemini/Docroot/WEB-INF/GeminiHello.conf", "db.ConnectString = .*:3306", "db.ConnectString = " + args.database_host + ":3306")
   setup_util.replace_text("gemini/Docroot/WEB-INF/GeminiHello.conf", "db.ConnectString = .*:3306", "db.ConnectString = " + args.database_host + ":3306")
   setup_util.replace_text("gemini/Docroot/WEB-INF/resin.xml", "root-directory=\".*\/FrameworkBenchmarks", "root-directory=\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("gemini/Docroot/WEB-INF/resin.xml", "root-directory=\".*\/FrameworkBenchmarks", "root-directory=\"" + home + "/FrameworkBenchmarks")
   
   
   try:
   try:
-    subprocess.call("mkdir classes", shell=True, cwd="gemini/Docroot/WEB-INF")
-    subprocess.check_call("ant compile", shell=True, cwd="gemini")
-    subprocess.check_call("$RESIN_HOME/bin/resinctl -conf $HOME/FrameworkBenchmarks/gemini/Docroot/WEB-INF/resin.xml start", shell=True)
+    subprocess.call("mkdir classes", shell=True, cwd="gemini/Docroot/WEB-INF", stderr=logfile, stdout=logfile)
+    subprocess.check_call("ant compile", shell=True, cwd="gemini", stderr=logfile, stdout=logfile)
+    subprocess.check_call("$RESIN_HOME/bin/resinctl -conf $HOME/FrameworkBenchmarks/gemini/Docroot/WEB-INF/resin.xml start", shell=True, stderr=out, stdout=out)
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
-    subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
+    subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True, stderr=logfile, stdout=logfile)
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1

+ 2 - 2
go/setup.py

@@ -3,7 +3,7 @@ import sys
 import os
 import os
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("go/src/hello/hello.go", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   setup_util.replace_text("go/src/hello/hello.go", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   if os.name == 'nt':
   if os.name == 'nt':
     #subprocess.call("rmdir /s /q pkg\\windows_amd64", shell=True, cwd="go")
     #subprocess.call("rmdir /s /q pkg\\windows_amd64", shell=True, cwd="go")
@@ -15,7 +15,7 @@ def start(args):
   subprocess.call("go get ./...", shell=True, cwd="go") 
   subprocess.call("go get ./...", shell=True, cwd="go") 
   subprocess.Popen("go run src/hello/hello.go".rsplit(" "), cwd="go")
   subprocess.Popen("go run src/hello/hello.go".rsplit(" "), cwd="go")
   return 0
   return 0
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.call("taskkill /f /im go.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im go.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im hello.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im hello.exe > NUL", shell=True)

+ 2 - 2
grails/setup.py

@@ -3,7 +3,7 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("grails/hello/grails-app/conf/DataSource.groovy", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   setup_util.replace_text("grails/hello/grails-app/conf/DataSource.groovy", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   
   
   try:
   try:
@@ -15,7 +15,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("rm -rf $RESIN_HOME/resin-data/*", shell=True)
     subprocess.check_call("rm -rf $RESIN_HOME/resin-data/*", shell=True)

+ 2 - 2
grizzly-bm/setup.py

@@ -3,14 +3,14 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   try:
   try:
     subprocess.check_call("mvn clean compile assembly:single", shell=True, cwd="grizzly-bm")
     subprocess.check_call("mvn clean compile assembly:single", shell=True, cwd="grizzly-bm")
     subprocess.Popen("java -jar grizzly-bm-0.1-jar-with-dependencies.jar".rsplit(" "), cwd="grizzly-bm/target")
     subprocess.Popen("java -jar grizzly-bm-0.1-jar-with-dependencies.jar".rsplit(" "), cwd="grizzly-bm/target")
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()
   for line in out.splitlines():
   for line in out.splitlines():

+ 2 - 2
grizzly-jersey/setup.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   try:
   try:
     subprocess.check_call("mvn clean package", shell=True, cwd="grizzly-jersey")
     subprocess.check_call("mvn clean package", shell=True, cwd="grizzly-jersey")
     subprocess.Popen(("java -jar target/grizzly-jersey-example.jar -dbhost " + args.database_host).rsplit(" "), cwd="grizzly-jersey")
     subprocess.Popen(("java -jar target/grizzly-jersey-example.jar -dbhost " + args.database_host).rsplit(" "), cwd="grizzly-jersey")
@@ -11,7 +11,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()
   for line in out.splitlines():
   for line in out.splitlines():

+ 2 - 2
hapi/setup.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("hapi/app.js", "localhost", args.database_host)
   setup_util.replace_text("hapi/app.js", "localhost", args.database_host)
 
 
   try:
   try:
@@ -29,7 +29,7 @@ def npm():
       subprocess.check_call("del package.json", shell=True, cwd="hapi")
       subprocess.check_call("del package.json", shell=True, cwd="hapi")
       subprocess.check_call("ren package.json.dist package.json", shell=True, cwd="hapi")
       subprocess.check_call("ren package.json.dist package.json", shell=True, cwd="hapi")
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.Popen("taskkill /f /im node.exe > NUL", shell=True)
     subprocess.Popen("taskkill /f /im node.exe > NUL", shell=True)
     return 0
     return 0

+ 2 - 2
http-kit/setup.py

@@ -3,7 +3,7 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
 
 
   try:
   try:
     subprocess.check_call("lein deps", shell=True, cwd="http-kit/hello")
     subprocess.check_call("lein deps", shell=True, cwd="http-kit/hello")
@@ -18,7 +18,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   try:
   try:
     # listen on 8080
     # listen on 8080
     subprocess.check_call("lsof -t -sTCP:LISTEN -i:8080 | xargs kill", shell=True)
     subprocess.check_call("lsof -t -sTCP:LISTEN -i:8080 | xargs kill", shell=True)

+ 2 - 2
jester/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   subprocess.check_call("nimrod c -d:release --path:../installs/jester/jester hello.nim", shell=True, cwd="jester")
   subprocess.check_call("nimrod c -d:release --path:../installs/jester/jester hello.nim", shell=True, cwd="jester")
   subprocess.check_call("sudo /usr/local/nginx/sbin/nginx -c " + home + "/FrameworkBenchmarks/jester/config/nginx.conf", shell=True)
   subprocess.check_call("sudo /usr/local/nginx/sbin/nginx -c " + home + "/FrameworkBenchmarks/jester/config/nginx.conf", shell=True)
   
   
@@ -14,7 +14,7 @@ def start(args):
     subprocess.Popen("./hello 900" + str(i) + " > /dev/null", shell=True, cwd="jester")
     subprocess.Popen("./hello 900" + str(i) + " > /dev/null", shell=True, cwd="jester")
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
   subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
 
 
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)

+ 2 - 2
kelp/setup.py

@@ -7,7 +7,7 @@ import getpass
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("kelp/app.pl", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("kelp/app.pl", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("kelp/nginx.conf", "USR", getpass.getuser())
   setup_util.replace_text("kelp/nginx.conf", "USR", getpass.getuser())
   setup_util.replace_text("kelp/nginx.conf", "server unix:.*\/FrameworkBenchmarks", "server unix:" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("kelp/nginx.conf", "server unix:.*\/FrameworkBenchmarks", "server unix:" + home + "/FrameworkBenchmarks")
@@ -18,7 +18,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)

+ 2 - 2
lapis/setup.py

@@ -3,14 +3,14 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("lapis/nginx.conf", "CWD", os.getcwd())
   setup_util.replace_text("lapis/nginx.conf", "CWD", os.getcwd())
   setup_util.replace_text("lapis/nginx.conf", "DBHOSTNAME", args.database_host)
   setup_util.replace_text("lapis/nginx.conf", "DBHOSTNAME", args.database_host)
   subprocess.Popen('/usr/local/openresty/nginx/sbin/nginx -c `pwd`/nginx.conf -g "worker_processes ' + str((args.max_threads)) + ';"', shell=True, cwd="lapis")
   subprocess.Popen('/usr/local/openresty/nginx/sbin/nginx -c `pwd`/nginx.conf -g "worker_processes ' + str((args.max_threads)) + ';"', shell=True, cwd="lapis")
 
 
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   subprocess.Popen('/usr/local/openresty/nginx/sbin/nginx -c `pwd`/nginx.conf -s stop', shell=True, cwd="lapis")
   subprocess.Popen('/usr/local/openresty/nginx/sbin/nginx -c `pwd`/nginx.conf -s stop', shell=True, cwd="lapis")
 
 
   return 0
   return 0

+ 2 - 2
lift-stateless/setup.py

@@ -5,7 +5,7 @@ import setup_util
 import os
 import os
 import time
 import time
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("lift-stateless/src/main/scala/Main.scala", "> \".*:3306", "> \"" + args.database_host + ":3306")
   setup_util.replace_text("lift-stateless/src/main/scala/Main.scala", "> \".*:3306", "> \"" + args.database_host + ":3306")
 
 
   if os.name == 'nt':
   if os.name == 'nt':
@@ -17,7 +17,7 @@ def start(args):
 
 
   time.sleep(5)
   time.sleep(5)
   return 0
   return 0
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.check_call("wmic process where \"CommandLine LIKE '%lift-stateless-assembly%'\" call terminate")
     subprocess.check_call("wmic process where \"CommandLine LIKE '%lift-stateless-assembly%'\" call terminate")
   else:
   else:

+ 2 - 2
luminus/setup.py

@@ -3,7 +3,7 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("luminus/hello/src/hello/models/schema.clj", ":subname \"//.*:3306", ":subname \"//" + args.database_host + ":3306")
   setup_util.replace_text("luminus/hello/src/hello/models/schema.clj", ":subname \"//.*:3306", ":subname \"//" + args.database_host + ":3306")
 
 
   try:
   try:
@@ -14,7 +14,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     return 0
     return 0

+ 2 - 2
mojolicious/setup.py

@@ -7,7 +7,7 @@ import getpass
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("mojolicious/app.pl", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("mojolicious/app.pl", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("mojolicious/nginx.conf", "USR", getpass.getuser())
   setup_util.replace_text("mojolicious/nginx.conf", "USR", getpass.getuser())
   setup_util.replace_text("mojolicious/nginx.conf", "server unix:.*\/FrameworkBenchmarks", "server unix:" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("mojolicious/nginx.conf", "server unix:.*\/FrameworkBenchmarks", "server unix:" + home + "/FrameworkBenchmarks")
@@ -18,7 +18,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)

+ 2 - 2
nancy/setup_iis.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 1
     return 1
   
   
@@ -14,7 +14,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 0
     return 0
   
   

+ 2 - 2
nancy/setup_libevent.py

@@ -6,7 +6,7 @@ import os
 root = os.getcwd() + "/nancy"
 root = os.getcwd() + "/nancy"
 app = root + "/src"
 app = root + "/src"
 
 
-def start(args):
+def start(args, logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 1
     return 1
   
   
@@ -30,7 +30,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 0
     return 0
   
   

+ 2 - 2
nancy/setup_nginx.py

@@ -6,7 +6,7 @@ import os
 root = os.getcwd() + "/nancy"
 root = os.getcwd() + "/nancy"
 app = root + "/src"
 app = root + "/src"
 
 
-def start(args):
+def start(args, logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 1
     return 1
   
   
@@ -29,7 +29,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 0
     return 0
   
   

+ 2 - 2
nancy/setup_xsp.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 1
     return 1
   
   
@@ -17,7 +17,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 0
     return 0
   
   

+ 2 - 2
netty/setup.py

@@ -3,14 +3,14 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   try:
   try:
     subprocess.check_call("mvn clean compile assembly:single", shell=True, cwd="netty")
     subprocess.check_call("mvn clean compile assembly:single", shell=True, cwd="netty")
     subprocess.Popen("java -Dio.netty.noResourceLeakDetection=true -jar netty-example-0.1-jar-with-dependencies.jar".rsplit(" "), cwd="netty/target")
     subprocess.Popen("java -Dio.netty.noResourceLeakDetection=true -jar netty-example-0.1-jar-with-dependencies.jar".rsplit(" "), cwd="netty/target")
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.check_call("wmic process where \"CommandLine LIKE '%netty-example%'\" call terminate")
     subprocess.check_call("wmic process where \"CommandLine LIKE '%netty-example%'\" call terminate")
   else:
   else:

+ 2 - 2
nodejs/setup.py

@@ -4,7 +4,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("nodejs/hello.js", "mongodb:\/\/.*\/hello_world", "mongodb://" + args.database_host + "/hello_world")
   setup_util.replace_text("nodejs/hello.js", "mongodb:\/\/.*\/hello_world", "mongodb://" + args.database_host + "/hello_world")
   setup_util.replace_text("nodejs/hello.js", "localhost", args.database_host)
   setup_util.replace_text("nodejs/hello.js", "localhost", args.database_host)
 
 
@@ -28,7 +28,7 @@ def npm():
       subprocess.check_call("del package.json", shell=True, cwd="nodejs")
       subprocess.check_call("del package.json", shell=True, cwd="nodejs")
       subprocess.check_call("ren package.json.dist package.json", shell=True, cwd="nodejs")
       subprocess.check_call("ren package.json.dist package.json", shell=True, cwd="nodejs")
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.Popen("taskkill /f /im node.exe > NUL", shell=True)
     subprocess.Popen("taskkill /f /im node.exe > NUL", shell=True)
     return 0
     return 0

+ 2 - 2
onion/setup.py

@@ -3,13 +3,13 @@ import sys
 import os
 import os
 import setup_util 
 import setup_util 
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("onion/hello.c", "mysql_real_connect\(data.db\[i\], \".*\",", "mysql_real_connect(data.db[i], \"" + args.database_host + "\",")
   setup_util.replace_text("onion/hello.c", "mysql_real_connect\(data.db\[i\], \".*\",", "mysql_real_connect(data.db[i], \"" + args.database_host + "\",")
   os.putenv("ONION_LOG","noinfo")
   os.putenv("ONION_LOG","noinfo")
   subprocess.Popen("make && ./hello", shell=True, cwd="onion")
   subprocess.Popen("make && ./hello", shell=True, cwd="onion")
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   
   
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()

+ 2 - 2
openresty/setup.py

@@ -3,14 +3,14 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("openresty/nginx.conf", "CWD", os.getcwd())
   setup_util.replace_text("openresty/nginx.conf", "CWD", os.getcwd())
   setup_util.replace_text("openresty/app.lua", "DBHOSTNAME", args.database_host)
   setup_util.replace_text("openresty/app.lua", "DBHOSTNAME", args.database_host)
   subprocess.Popen('sudo /usr/local/openresty/nginx/sbin/nginx -c `pwd`/nginx.conf -g "worker_processes ' + str((args.max_threads)) + ';"', shell=True, cwd="openresty")
   subprocess.Popen('sudo /usr/local/openresty/nginx/sbin/nginx -c `pwd`/nginx.conf -g "worker_processes ' + str((args.max_threads)) + ';"', shell=True, cwd="openresty")
 
 
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   subprocess.Popen('sudo /usr/local/openresty/nginx/sbin/nginx -c `pwd`/nginx.conf -s stop', shell=True, cwd="openresty")
   subprocess.Popen('sudo /usr/local/openresty/nginx/sbin/nginx -c `pwd`/nginx.conf -s stop', shell=True, cwd="openresty")
 
 
   return 0
   return 0

+ 2 - 2
php-codeigniter/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-codeigniter/application/config/database.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-codeigniter/application/config/database.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-codeigniter/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-codeigniter/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -21,7 +21,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.call('appcmd delete site PHP', shell=True)
       subprocess.call('appcmd delete site PHP', shell=True)

+ 2 - 2
php-fuel/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-fuel/fuel/app/config/production/db.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-fuel/fuel/app/config/production/db.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-fuel/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-fuel/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -21,7 +21,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.call('appcmd delete site PHP', shell=True)
       subprocess.call('appcmd delete site PHP', shell=True)

+ 2 - 2
php-kohana/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-kohana/application/config/database.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-kohana/application/config/database.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-kohana/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-kohana/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -21,7 +21,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.check_call('appcmd delete site PHP', shell=True)
       subprocess.check_call('appcmd delete site PHP', shell=True)

+ 2 - 2
php-laravel/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-laravel/application/config/database.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-laravel/application/config/database.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-laravel/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-laravel/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -21,7 +21,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.call('appcmd delete site PHP', shell=True)
       subprocess.call('appcmd delete site PHP', shell=True)

+ 2 - 2
php-lithium/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-lithium/app/config/bootstrap/connections.php", "192.168.100.102", ""+ args.database_host +"")
   setup_util.replace_text("php-lithium/app/config/bootstrap/connections.php", "192.168.100.102", ""+ args.database_host +"")
   setup_util.replace_text("php-lithium/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-lithium/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -21,7 +21,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.call('appcmd delete site PHP', shell=True)
       subprocess.call('appcmd delete site PHP', shell=True)

+ 2 - 2
php-micromvc/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-micromvc/Config/Config.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-micromvc/Config/Config.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-micromvc/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-micromvc/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -21,7 +21,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.call('appcmd delete site PHP', shell=True)
       subprocess.call('appcmd delete site PHP', shell=True)

+ 2 - 2
php-phalcon-micro/setup.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-phalcon-micro/public/index.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-phalcon-micro/public/index.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-phalcon-micro/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-phalcon-micro/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -16,7 +16,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-phalcon-micro/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-phalcon-micro/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-phalcon/setup.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-phalcon/app/config/config.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-phalcon/app/config/config.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-phalcon/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-phalcon/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -16,7 +16,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-phalcon/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-phalcon/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-phpixie/setup.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-phpixie/assets/config/db.php", "localhost", "" + args.database_host + "")
   setup_util.replace_text("php-phpixie/assets/config/db.php", "localhost", "" + args.database_host + "")
   setup_util.replace_text("php-phpixie/deploy/php-phpixie", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-phpixie/deploy/php-phpixie", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-phpixie/deploy/php-phpixie", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-phpixie/deploy/php-phpixie", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
@@ -18,7 +18,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-phpixie/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-phpixie/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-senthot/setup.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-senthot/app/Conf/config.php", "'DB_HOST' => 'localhost'", "'DB_HOST' => '" + args.database_host +"'")
   setup_util.replace_text("php-senthot/app/Conf/config.php", "'DB_HOST' => 'localhost'", "'DB_HOST' => '" + args.database_host +"'")
   setup_util.replace_text("php-senthot/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-senthot/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -17,7 +17,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-senthot/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-senthot/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-silex-orm/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-silex-orm/web/index.php", "192.168.100.102", "" + args.database_host + "")
   setup_util.replace_text("php-silex-orm/web/index.php", "192.168.100.102", "" + args.database_host + "")
   setup_util.replace_text("php-silex-orm/deploy/php-silex-orm", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex-orm/deploy/php-silex-orm", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex-orm/deploy/php-silex-orm", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex-orm/deploy/php-silex-orm", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
@@ -23,7 +23,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-silex-orm/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-silex-orm/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-silex/setup.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-silex/web/index.php", "192.168.100.102", "" + args.database_host + "")
   setup_util.replace_text("php-silex/web/index.php", "192.168.100.102", "" + args.database_host + "")
   setup_util.replace_text("php-silex/deploy/php-silex", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex/deploy/php-silex", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex/deploy/php-silex", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex/deploy/php-silex", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
@@ -22,7 +22,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-silex/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-silex/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-silex/setup_raw.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-silex/web/index_raw.php", "192.168.100.102", "" + args.database_host + "")
   setup_util.replace_text("php-silex/web/index_raw.php", "192.168.100.102", "" + args.database_host + "")
   setup_util.replace_text("php-silex/deploy/php-silex", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex/deploy/php-silex", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex/deploy/php-silex", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silex/deploy/php-silex", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
@@ -19,7 +19,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-silex/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-silex/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-silica/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-silica/web/app.php", "192.168.100.102", "" + args.database_host + "")
   setup_util.replace_text("php-silica/web/app.php", "192.168.100.102", "" + args.database_host + "")
   setup_util.replace_text("php-silica/deploy/php-silica", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silica/deploy/php-silica", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silica/deploy/php-silica", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-silica/deploy/php-silica", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
@@ -23,7 +23,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-silica/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-silica/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-slim/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-slim/index.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-slim/index.php", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("php-slim/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-slim/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -21,7 +21,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.call('appcmd delete site PHP', shell=True)
       subprocess.call('appcmd delete site PHP', shell=True)

+ 2 - 2
php-symfony2-stripped/setup.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-symfony2/app/config/parameters.yml", "database_host: .*", "database_host: " + args.database_host)
   setup_util.replace_text("php-symfony2/app/config/parameters.yml", "database_host: .*", "database_host: " + args.database_host)
   setup_util.replace_text("php-symfony2/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-symfony2/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -18,7 +18,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-symfony2/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-symfony2/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-symfony2/setup.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-symfony2/app/config/parameters.yml", "database_host: .*", "database_host: " + args.database_host)
   setup_util.replace_text("php-symfony2/app/config/parameters.yml", "database_host: .*", "database_host: " + args.database_host)
   setup_util.replace_text("php-symfony2/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-symfony2/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -18,7 +18,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-symfony2/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-symfony2/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php-yaf/setup.py

@@ -5,7 +5,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php-yaf/app/conf/application.ini", "host=localhost", "host="+ args.database_host +"")
   setup_util.replace_text("php-yaf/app/conf/application.ini", "host=localhost", "host="+ args.database_host +"")
   setup_util.replace_text("php-yaf/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("php-yaf/deploy/nginx.conf", "root .*\/FrameworkBenchmarks", "root " + home + "/FrameworkBenchmarks")
 
 
@@ -17,7 +17,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-yaf/deploy/php-fpm.pid )", shell=True)
     subprocess.call("sudo kill -QUIT $( cat php-yaf/deploy/php-fpm.pid )", shell=True)

+ 2 - 2
php/setup.py

@@ -7,7 +7,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("php/dborm.php", "@.*\/hello_world", "@" + args.database_host + "/hello_world")
   setup_util.replace_text("php/dborm.php", "@.*\/hello_world", "@" + args.database_host + "/hello_world")
   setup_util.replace_text("php/dbraw.php", "host=.*;", "host=" + args.database_host + ";")
   setup_util.replace_text("php/dbraw.php", "host=.*;", "host=" + args.database_host + ";")
   setup_util.replace_text("php/updateraw.php", "host=.*;", "host=" + args.database_host + ";")
   setup_util.replace_text("php/updateraw.php", "host=.*;", "host=" + args.database_host + ";")
@@ -31,7 +31,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.check_call('appcmd delete site PHP', shell=True)
       subprocess.check_call('appcmd delete site PHP', shell=True)

+ 2 - 2
phreeze/setup.py

@@ -6,7 +6,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("phreeze/index.php", "localhost:3306", "" + args.database_host + ":3306")
   setup_util.replace_text("phreeze/index.php", "localhost:3306", "" + args.database_host + ":3306")
   setup_util.replace_text("phreeze/deploy/phreeze", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("phreeze/deploy/phreeze", "\".*\/FrameworkBenchmarks", "\"" + home + "/FrameworkBenchmarks")
   setup_util.replace_text("phreeze/deploy/phreeze", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
   setup_util.replace_text("phreeze/deploy/phreeze", "Directory .*\/FrameworkBenchmarks", "Directory " + home + "/FrameworkBenchmarks")
@@ -27,7 +27,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.call('appcmd delete site PHP', shell=True)
       subprocess.call('appcmd delete site PHP', shell=True)

+ 2 - 2
plack/setup.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("plack/app.psgi", "localhost", ""+ args.database_host +"")
   setup_util.replace_text("plack/app.psgi", "localhost", ""+ args.database_host +"")
   try:
   try:
     subprocess.check_call("curl -L http://cpanmin.us | perl - App::cpanminus", shell=True, cwd="plack")
     subprocess.check_call("curl -L http://cpanmin.us | perl - App::cpanminus", shell=True, cwd="plack")
@@ -13,7 +13,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.Popen("kill -TERM $(ps --ppid `cat app.pid` -o pid --no-header)", shell=True, cwd="plack")
     subprocess.Popen("kill -TERM $(ps --ppid `cat app.pid` -o pid --no-header)", shell=True, cwd="plack")
     return 0
     return 0

+ 2 - 2
plain/setup.py

@@ -4,7 +4,7 @@ import sys
 import time
 import time
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("plain/src/main/resources/application.conf", "127.0.0.1", args.database_host)
   setup_util.replace_text("plain/src/main/resources/application.conf", "127.0.0.1", args.database_host)
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.check_call("./sbt.bat assembly", shell=True, cwd="plain")
     subprocess.check_call("./sbt.bat assembly", shell=True, cwd="plain")
@@ -15,7 +15,7 @@ def start(args):
   time.sleep(10)
   time.sleep(10)
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.call("taskkill /f /im *plain-benchmark* > NUL", shell=True)
     subprocess.call("taskkill /f /im *plain-benchmark* > NUL", shell=True)
     return 0
     return 0

+ 2 - 2
play-activate-mysql/setup.py

@@ -5,7 +5,7 @@ import setup_util
 import os
 import os
 from zipfile import ZipFile
 from zipfile import ZipFile
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("play-activate-mysql/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   setup_util.replace_text("play-activate-mysql/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
 
 
   subprocess.check_call("play clean dist", shell=True, cwd="play-activate-mysql")
   subprocess.check_call("play clean dist", shell=True, cwd="play-activate-mysql")
@@ -21,7 +21,7 @@ def start(args):
     subprocess.Popen("./play-activate-mysql", shell=True, cwd="play-activate-mysql/target/universal/play-activate-mysql-1.0-SNAPSHOT/bin")
     subprocess.Popen("./play-activate-mysql", shell=True, cwd="play-activate-mysql/target/universal/play-activate-mysql-1.0-SNAPSHOT/bin")
 
 
   return 0
   return 0
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     with open("./play-activate-mysql/target/universal/play-activate-mysql-1.0-SNAPSHOT/RUNNING_PID") as f:
     with open("./play-activate-mysql/target/universal/play-activate-mysql-1.0-SNAPSHOT/RUNNING_PID") as f:
       pid = int(f.read())
       pid = int(f.read())

+ 2 - 2
play-java-jpa/setup.py

@@ -1,12 +1,12 @@
 import setup_util
 import setup_util
 import subprocess
 import subprocess
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("play-java-jpa/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   setup_util.replace_text("play-java-jpa/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   subprocess.Popen(["play","start"], stdin=subprocess.PIPE, cwd="play-java-jpa")
   subprocess.Popen(["play","start"], stdin=subprocess.PIPE, cwd="play-java-jpa")
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   p = subprocess.Popen(["play","stop"], cwd="play-java-jpa")
   p = subprocess.Popen(["play","stop"], cwd="play-java-jpa")
   p.communicate()
   p.communicate()
   return 0
   return 0

+ 2 - 2
play-java/setup.py

@@ -1,12 +1,12 @@
 import setup_util
 import setup_util
 import subprocess
 import subprocess
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("play-java/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   setup_util.replace_text("play-java/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   subprocess.Popen(["play","start"], stdin=subprocess.PIPE, cwd="play-java")
   subprocess.Popen(["play","start"], stdin=subprocess.PIPE, cwd="play-java")
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   p = subprocess.Popen(["play","stop"], cwd="play-java")
   p = subprocess.Popen(["play","stop"], cwd="play-java")
   p.communicate()
   p.communicate()
   return 0
   return 0

+ 2 - 2
play-scala-mongodb/setup.py

@@ -5,7 +5,7 @@ import setup_util
 import os
 import os
 from zipfile import ZipFile
 from zipfile import ZipFile
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("play-scala-mongodb/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   setup_util.replace_text("play-scala-mongodb/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
 
 
   subprocess.check_call("play clean dist", shell=True, cwd="play-scala-mongodb")
   subprocess.check_call("play clean dist", shell=True, cwd="play-scala-mongodb")
@@ -21,7 +21,7 @@ def start(args):
     subprocess.Popen("./play-scala-mongodb", shell=True, cwd="play-scala-mongodb/target/universal/play-scala-mongodb-1.0-SNAPSHOT/bin")
     subprocess.Popen("./play-scala-mongodb", shell=True, cwd="play-scala-mongodb/target/universal/play-scala-mongodb-1.0-SNAPSHOT/bin")
 
 
   return 0
   return 0
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     with open("./play-scala-mongodb/target/universal/play-scala-mongodb-1.0-SNAPSHOT/RUNNING_PID") as f:
     with open("./play-scala-mongodb/target/universal/play-scala-mongodb-1.0-SNAPSHOT/RUNNING_PID") as f:
       pid = int(f.read())
       pid = int(f.read())

+ 2 - 2
play-scala/setup.py

@@ -2,7 +2,7 @@ import setup_util
 import subprocess
 import subprocess
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   kill_running_process() # Kill the running process and delete the 
   kill_running_process() # Kill the running process and delete the 
                          # RUNNING_PID file (if any). With any luck no 
                          # RUNNING_PID file (if any). With any luck no 
                          # new process has picked up the same PID.
                          # new process has picked up the same PID.
@@ -15,7 +15,7 @@ def start(args):
   subprocess.Popen([play_cmd,"start"], stdin=subprocess.PIPE, cwd="play-scala")
   subprocess.Popen([play_cmd,"start"], stdin=subprocess.PIPE, cwd="play-scala")
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   kill_running_process()  
   kill_running_process()  
   return 0
   return 0
 
 

+ 2 - 2
play-slick/setup.py

@@ -5,7 +5,7 @@ import setup_util
 import os
 import os
 from zipfile import ZipFile
 from zipfile import ZipFile
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("play-slick/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   setup_util.replace_text("play-slick/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
 
 
   subprocess.check_call("play clean dist", shell=True, cwd="play-slick")
   subprocess.check_call("play clean dist", shell=True, cwd="play-slick")
@@ -21,7 +21,7 @@ def start(args):
     subprocess.Popen("./play-slick", shell=True, cwd="play-slick/target/universal/play-slick-1.0-SNAPSHOT/bin")
     subprocess.Popen("./play-slick", shell=True, cwd="play-slick/target/universal/play-slick-1.0-SNAPSHOT/bin")
 
 
   return 0
   return 0
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     with open("./play-slick/target/universal/play-slick-1.0-SNAPSHOT/RUNNING_PID") as f:
     with open("./play-slick/target/universal/play-slick-1.0-SNAPSHOT/RUNNING_PID") as f:
       pid = int(f.read())
       pid = int(f.read())

+ 2 - 2
play1/setup.py

@@ -2,14 +2,14 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("play1/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   setup_util.replace_text("play1/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   subprocess.check_call("play1 start --%prod", shell=True, cwd="play1")
   subprocess.check_call("play1 start --%prod", shell=True, cwd="play1")
 #  subprocess.check_call("rm -rf $RESIN_HOME/webapps/*", shell=True)
 #  subprocess.check_call("rm -rf $RESIN_HOME/webapps/*", shell=True)
 #  subprocess.check_call("play1 war -o $RESIN_HOME/webapps/play1 --exclude benchmark_config", shell=True, cwd="play1")
 #  subprocess.check_call("play1 war -o $RESIN_HOME/webapps/play1 --exclude benchmark_config", shell=True, cwd="play1")
 #  subprocess.check_call("$RESIN_HOME/bin/resinctl start", shell=True)
 #  subprocess.check_call("$RESIN_HOME/bin/resinctl start", shell=True)
   return 0
   return 0
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("play1 stop", shell=True, cwd="play1")
     subprocess.check_call("play1 stop", shell=True, cwd="play1")
 #    subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
 #    subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)

+ 2 - 2
play1siena/setup.py

@@ -4,7 +4,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("play1siena/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   setup_util.replace_text("play1siena/conf/application.conf", "jdbc:mysql:\/\/.*:3306", "jdbc:mysql://" + args.database_host + ":3306")
   
   
   subprocess.check_call("rm -rf $RESIN_HOME/webapps/*", shell=True)
   subprocess.check_call("rm -rf $RESIN_HOME/webapps/*", shell=True)
@@ -12,7 +12,7 @@ def start(args):
   subprocess.check_call("$RESIN_HOME/bin/resinctl start", shell=True)
   subprocess.check_call("$RESIN_HOME/bin/resinctl start", shell=True)
 
 
   return 0
   return 0
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("rm -rf $RESIN_HOME/webapps/*", shell=True)
     subprocess.check_call("rm -rf $RESIN_HOME/webapps/*", shell=True)

+ 2 - 2
rack/setup_jruby.py

@@ -3,7 +3,7 @@ import subprocess
 import sys
 import sys
 import re
 import re
 
 
-def start(args):
+def start(args, logfile):
 
 
   try:
   try:
     subprocess.check_call("rvm jruby-1.7.4 do bundle install --gemfile=Gemfile-jruby", shell=True, cwd="rack")
     subprocess.check_call("rvm jruby-1.7.4 do bundle install --gemfile=Gemfile-jruby", shell=True, cwd="rack")
@@ -16,7 +16,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("rm Gemfile", shell=True, cwd="rack")
     subprocess.check_call("rm Gemfile", shell=True, cwd="rack")

+ 2 - 2
rack/setup_ruby.py

@@ -8,7 +8,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
 
 
   try:
   try:
     subprocess.check_call("rvm ruby-2.0.0-p0 do bundle install --gemfile=Gemfile-ruby", shell=True, cwd="rack")
     subprocess.check_call("rvm ruby-2.0.0-p0 do bundle install --gemfile=Gemfile-ruby", shell=True, cwd="rack")
@@ -19,7 +19,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
   subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
   try:
   try:
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)

+ 2 - 2
racket-ws/setup.py

@@ -4,13 +4,13 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   db_host = args.database_host
   db_host = args.database_host
   threads = str(args.max_threads)
   threads = str(args.max_threads)
   subprocess.Popen("racket -t bench.rkt -- " + db_host + " > /dev/null", shell=True, cwd="racket-ws/bench")
   subprocess.Popen("racket -t bench.rkt -- " + db_host + " > /dev/null", shell=True, cwd="racket-ws/bench")
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()
   for line in out.splitlines():
   for line in out.splitlines():

+ 2 - 2
rails-stripped/setup_jruby.py

@@ -3,7 +3,7 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("rails-stripped/config/database-jruby.yml", "host: .*", "host: " + args.database_host)
   setup_util.replace_text("rails-stripped/config/database-jruby.yml", "host: .*", "host: " + args.database_host)
   setup_util.replace_text("rails-stripped/resin-web.xml", "mysql:\/\/.*:3306", "mysql://" + args.database_host + ":3306")
   setup_util.replace_text("rails-stripped/resin-web.xml", "mysql:\/\/.*:3306", "mysql://" + args.database_host + ":3306")
 
 
@@ -19,7 +19,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("rm Gemfile", shell=True, cwd="rails-stripped")
     subprocess.check_call("rm Gemfile", shell=True, cwd="rails-stripped")

+ 2 - 2
rails-stripped/setup_ruby.py

@@ -8,7 +8,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("rails-stripped/config/database-ruby.yml", "host: .*", "host: " + args.database_host)
   setup_util.replace_text("rails-stripped/config/database-ruby.yml", "host: .*", "host: " + args.database_host)
   try:
   try:
     subprocess.check_call("rvm ruby-2.0.0-p0 do bundle install --gemfile=Gemfile-ruby", shell=True, cwd="rails-stripped")
     subprocess.check_call("rvm ruby-2.0.0-p0 do bundle install --gemfile=Gemfile-ruby", shell=True, cwd="rails-stripped")
@@ -20,7 +20,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
   subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
   try:
   try:
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)

+ 2 - 2
rails/setup_jruby.py

@@ -3,7 +3,7 @@ import subprocess
 import sys
 import sys
 import setup_util
 import setup_util
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("rails/config/database-jruby.yml", "host: .*", "host: " + args.database_host)
   setup_util.replace_text("rails/config/database-jruby.yml", "host: .*", "host: " + args.database_host)
   setup_util.replace_text("rails/resin-web.xml", "mysql:\/\/.*:3306", "mysql://" + args.database_host + ":3306")
   setup_util.replace_text("rails/resin-web.xml", "mysql:\/\/.*:3306", "mysql://" + args.database_host + ":3306")
 
 
@@ -19,7 +19,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("$RESIN_HOME/bin/resinctl shutdown", shell=True)
     subprocess.check_call("rm Gemfile", shell=True, cwd="rails")
     subprocess.check_call("rm Gemfile", shell=True, cwd="rails")

+ 2 - 2
rails/setup_ruby.py

@@ -8,7 +8,7 @@ from os.path import expanduser
 
 
 home = expanduser("~")
 home = expanduser("~")
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("rails/config/database-ruby.yml", "host: .*", "host: " + args.database_host)
   setup_util.replace_text("rails/config/database-ruby.yml", "host: .*", "host: " + args.database_host)
   try:
   try:
     subprocess.check_call("rvm ruby-2.0.0-p0 do bundle install --gemfile=Gemfile-ruby", shell=True, cwd="rails")
     subprocess.check_call("rvm ruby-2.0.0-p0 do bundle install --gemfile=Gemfile-ruby", shell=True, cwd="rails")
@@ -20,7 +20,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
   subprocess.call("sudo /usr/local/nginx/sbin/nginx -s stop", shell=True)
   try:
   try:
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
     p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)

+ 2 - 2
restexpress/setup.py

@@ -4,7 +4,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("restexpress/config/dev/environment.properties", "mongodb:\/\/.*\/hello_world", "mongodb://" + args.database_host + "/hello_world")
   setup_util.replace_text("restexpress/config/dev/environment.properties", "mongodb:\/\/.*\/hello_world", "mongodb://" + args.database_host + "/hello_world")
   setup_util.replace_text("restexpress/config/dev/environment.properties", "mysql:\/\/.*:3306", "mysql://" + args.database_host + ":3306")
   setup_util.replace_text("restexpress/config/dev/environment.properties", "mysql:\/\/.*:3306", "mysql://" + args.database_host + ":3306")
 
 
@@ -16,7 +16,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()
   for line in out.splitlines():
   for line in out.splitlines():

+ 2 - 2
revel-jet/setup.py

@@ -6,7 +6,7 @@ import time
 
 
 CWD = 'revel-jet'
 CWD = 'revel-jet'
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text(CWD + "/src/benchmark/conf/app.conf", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   setup_util.replace_text(CWD + "/src/benchmark/conf/app.conf", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   if os.name == 'nt':
   if os.name == 'nt':
     env = os.environ.copy()
     env = os.environ.copy()
@@ -20,7 +20,7 @@ def start(args):
   subprocess.Popen("bin/revel run benchmark prod".rsplit(" "), cwd=CWD)
   subprocess.Popen("bin/revel run benchmark prod".rsplit(" "), cwd=CWD)
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.call("taskkill /f /im benchmark.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im benchmark.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im revel.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im revel.exe > NUL", shell=True)

+ 2 - 2
revel-qbs/setup.py

@@ -6,7 +6,7 @@ import time
 
 
 CWD = 'revel-qbs'
 CWD = 'revel-qbs'
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text(CWD + "/src/benchmark/conf/app.conf", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   setup_util.replace_text(CWD + "/src/benchmark/conf/app.conf", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   if os.name == 'nt':
   if os.name == 'nt':
     env = os.environ.copy()
     env = os.environ.copy()
@@ -20,7 +20,7 @@ def start(args):
   subprocess.Popen("bin/revel run benchmark prod".rsplit(" "), cwd=CWD)
   subprocess.Popen("bin/revel run benchmark prod".rsplit(" "), cwd=CWD)
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.call("taskkill /f /im benchmark.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im benchmark.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im revel.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im revel.exe > NUL", shell=True)

+ 5 - 5
revel/setup.py

@@ -4,7 +4,7 @@ import os
 import setup_util
 import setup_util
 import time
 import time
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("revel/src/benchmark/conf/app.conf", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   setup_util.replace_text("revel/src/benchmark/conf/app.conf", "tcp\(.*:3306\)", "tcp(" + args.database_host + ":3306)")
   if os.name == 'nt':
   if os.name == 'nt':
     env = os.environ.copy()
     env = os.environ.copy()
@@ -13,12 +13,12 @@ def start(args):
     subprocess.call(r"go build -o bin\revel.exe github.com/robfig/revel/revel", shell=True, cwd="revel", env=env)
     subprocess.call(r"go build -o bin\revel.exe github.com/robfig/revel/revel", shell=True, cwd="revel", env=env)
     subprocess.Popen(r"bin\revel.exe run benchmark prod".rsplit(" "), shell=True, cwd="revel", env=env)
     subprocess.Popen(r"bin\revel.exe run benchmark prod".rsplit(" "), shell=True, cwd="revel", env=env)
     return 0
     return 0
-  subprocess.call("go get -u github.com/robfig/revel/revel", shell=True, cwd="revel")
-  subprocess.call("go build -o bin/revel github.com/robfig/revel/revel", shell=True, cwd="revel")
-  subprocess.Popen("bin/revel run benchmark prod".rsplit(" "), cwd="revel")
+  subprocess.call("go get -u github.com/robfig/revel/revel", shell=True, cwd="revel", stderr=logfile, stdout=logfile)
+  subprocess.call("go build -o bin/revel github.com/robfig/revel/revel", shell=True, cwd="revel", stderr=logfile, stdout=logfile)
+  subprocess.Popen("bin/revel run benchmark prod".rsplit(" "), cwd="revel", stderr=logfile, stdout=logfile)
   return 0
   return 0
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     subprocess.call("taskkill /f /im benchmark.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im benchmark.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im revel.exe > NUL", shell=True)
     subprocess.call("taskkill /f /im revel.exe > NUL", shell=True)

+ 2 - 2
ringojs-convenient/setup.py

@@ -4,7 +4,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("ringojs-convenient/app/models.js", "dbHost = '.*';", "dbHost = '" + args.database_host + "';")
   setup_util.replace_text("ringojs-convenient/app/models.js", "dbHost = '.*';", "dbHost = '" + args.database_host + "';")
 
 
   try:
   try:
@@ -21,7 +21,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()
   for line in out.splitlines():
   for line in out.splitlines():

+ 2 - 2
ringojs/setup.py

@@ -4,7 +4,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("ringojs/ringo-main.js", "dbHost = '.*';", "dbHost = '" + args.database_host + "';")
   setup_util.replace_text("ringojs/ringo-main.js", "dbHost = '.*';", "dbHost = '" + args.database_host + "';")
 
 
   try:
   try:
@@ -14,7 +14,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
   out, err = p.communicate()
   out, err = p.communicate()
   for line in out.splitlines():
   for line in out.splitlines():

+ 2 - 2
scalatra/setup.py

@@ -5,7 +5,7 @@ import setup_util
 import os
 import os
 import glob
 import glob
 
 
-def start(args):
+def start(args, logfile):
   setup_util.replace_text("scalatra/src/main/webapp/WEB-INF/resin-web.xml", "mysql:\/\/.*:3306", "mysql://" + args.database_host + ":3306")
   setup_util.replace_text("scalatra/src/main/webapp/WEB-INF/resin-web.xml", "mysql:\/\/.*:3306", "mysql://" + args.database_host + ":3306")
 
 
   try:
   try:
@@ -26,7 +26,7 @@ def start(args):
     return 0
     return 0
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
-def stop():
+def stop(logfile):
   try:
   try:
     if os.name == 'nt':
     if os.name == 'nt':
       subprocess.check_call('"%RESIN_HOME%\\bin\\stop.bat"', shell=True)
       subprocess.check_call('"%RESIN_HOME%\\bin\\stop.bat"', shell=True)

+ 2 - 2
servicestack/setup_iis.py

@@ -3,7 +3,7 @@ import sys
 import setup_util
 import setup_util
 import os
 import os
 
 
-def start(args):
+def start(args, logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 1
     return 1
   
   
@@ -14,7 +14,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name != 'nt':
   if os.name != 'nt':
     return 0
     return 0
   
   

+ 2 - 2
servicestack/setup_nginx.py

@@ -6,7 +6,7 @@ import os
 root = os.getcwd() + "/servicestack"
 root = os.getcwd() + "/servicestack"
 app = root + "/src"
 app = root + "/src"
 
 
-def start(args):
+def start(args, logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 1
     return 1
   
   
@@ -29,7 +29,7 @@ def start(args):
   except subprocess.CalledProcessError:
   except subprocess.CalledProcessError:
     return 1
     return 1
 
 
-def stop():
+def stop(logfile):
   if os.name == 'nt':
   if os.name == 'nt':
     return 0
     return 0
   
   

Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików