2013-07-15 2 views
1

나는 haproxy 구성을 다시 작성한 다음 haproxy를 다시 시작하는 python 스크립트가 있습니다. 유일한 문제는 cron에서 스크립트를 실행할 때 가끔 haproxy가 새 구성이 자리를 잡기 전에 다시 시작된다는 것입니다.OS 명령이 파이썬에서 동 기적으로 실행되도록하려면 어떻게해야합니까?

명령 줄에서 스크립트를 실행할 때 발생하지 않습니다.

스크립트에 time.sleep()을 추가하여 기다려 보았습니다.하지만 때로는 이런 일이 발생하기도합니다. 관련 코드는 다음과 같습니다.

command = "/home/adam/bin/genproxy.sh" 
os.system(command) 
os.system("cp /home/adam/bin/haproxy.cfg /etc/haproxy/") 
time.sleep(2) 
os.system("sudo /etc/init.d/haproxy restart") 

복사가 완료 될 때까지 어떻게 대기하는지 확인하려면 어떻게해야합니까?

+0

http://stackoverflow.com/a/17651370/661195이 정보가 도움이 되나요? –

답변

2

정말 그렇게해야합니다.

commands = [ ... ] 
for command in commands: 
    if os.system(command) == 0: 
     # Check for failure and wait 
     continue 
    else: 
     print "ERROR" 
     break 
관련 문제