setup.py 878 B

1234567891011121314151617181920212223
  1. import subprocess
  2. import sys
  3. import os
  4. def start(args, logfile, errfile):
  5. subprocess.call('rm -rf ${LWAN_BUILD}', shell=True, stderr=errfile, stdout=logfile)
  6. subprocess.call('mkdir -p ${LWAN_BUILD}', shell=True, stderr=errfile, stdout=logfile)
  7. subprocess.call('cmake ${LWAN_ROOT} -DCMAKE_BUILD_TYPE=Release && make techempower',
  8. cwd=os.environ['LWAN_BUILD'], shell=True, stderr=errfile, stdout=logfile)
  9. db_dir = os.path.join(os.environ['LWAN_ROOT'], 'techempower')
  10. exe_path = os.path.join(os.environ['LWAN_BUILD'], 'techempower', 'techempower')
  11. subprocess.Popen(exe_path, cwd=db_dir, stderr=errfile, stdout=logfile, shell=True)
  12. return 0
  13. def stop(logfile, errfile):
  14. p = subprocess.Popen(['pgrep', 'techempower'], stdout=subprocess.PIPE)
  15. out, err = p.communicate()
  16. for line in out.splitlines():
  17. pid = int(line)
  18. os.kill(pid, 2)
  19. return 0