setup.py 672 B

123456789101112131415161718192021222324
  1. import subprocess
  2. import sys
  3. import setup_util
  4. import os
  5. def start(args):
  6. setup_util.replace_text("flask/app.py", "DBHOSTNAME", args.database_host)
  7. subprocess.Popen("gunicorn app:app --worker-class=meinheld.gmeinheld.MeinheldWorker -b 0.0.0.0:8080 -w " +
  8. str((args.max_threads * 2)) + " --preload --log-level=critical", shell=True, cwd="flask")
  9. return 0
  10. def stop():
  11. p = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE)
  12. out, err = p.communicate()
  13. for line in out.splitlines():
  14. if 'gunicorn' in line:
  15. try:
  16. pid = int(line.split(None, 2)[1])
  17. os.kill(pid, 9)
  18. except OSError:
  19. pass
  20. return 0