Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. #!/usr/bin/python
  2. # -*- coding: utf-8 -*-
  3.  
  4. import argparse
  5. import os
  6. import signal
  7. import subprocess
  8. import urllib2
  9.  
  10. parser = argparse.ArgumentParser()
  11. parser.add_argument('--start', required=True)
  12. parser.add_argument('--wait', required=True)
  13. parser.add_argument('--test', required=True)
  14. args = parser.parse_args()
  15. start = args.start
  16. wait = args.wait
  17. test = args.test
  18.  
  19. # Start
  20. startProcess = subprocess.Popen(start, shell=True)
  21. signal.signal(signal.SIGINT, lambda signum, frame: os.kill(startProcess.pid, signum))
  22. signal.signal(signal.SIGTERM, lambda signum, frame: os.kill(startProcess.pid, signum))
  23.  
  24. # Wait
  25. while True:
  26. try:
  27. urllib2.urlopen(wait)
  28. break
  29. except:
  30. pass
  31.  
  32. try:
  33. # Test
  34. subprocess.check_call(test, shell=True)
  35. finally:
  36. # Stop
  37. os.kill(startProcess.pid, signal.SIGTERM)
  38. startProcess.kill()
  39. startProcess.communicate()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement