setup_pg.py 684 B

12345678910111213141516171819202122232425
  1. import os
  2. import subprocess
  3. import sys
  4. import time
  5. def start(args, logfile, errfile):
  6. subprocess.Popen('$PY2 server.py --port=8080 --postgres=%s --logging=error' % (args.database_host,),
  7. shell=True, cwd='tornado', stderr=errfile, stdout=logfile)
  8. return 0
  9. def stop(logfile, errfile):
  10. for line in subprocess.check_output(['ps', 'aux']).splitlines():
  11. if 'server.py --port=8080' in line:
  12. pid = int(line.split(None, 2)[1])
  13. os.kill(pid, 9)
  14. return 0
  15. if __name__ == '__main__':
  16. class DummyArg:
  17. database_host = 'localhost'
  18. start(DummyArg(), sys.stderr, sys.stderr)
  19. time.sleep(1)
  20. stop(sys.stderr, sys.stderr)