Форум сайта python.su
Есть некий сервис, код которого переодически обновляется. Хочется сделать так, чтобы он подтягивал свои обновления и сам перезапускался. Для этого я написал простенький скрипт на баше, который следит что сервис запущен и если он завершился с кодом отличным от нуля, а это значит скан обновленный скрипт, перезапускает его.
Но никак не получается завершить программу запущенную через twistd, если использовать sys.exit(1), код завершения все равно 0.
примерчик, запускается через twistd -ny code.py
import sys from twisted.internet import reactor, defer from twisted.application import service from twisted.python import log def stop(): log.msg('stop') reactor.stop() sys.exit(1) class exitService(service.Service): def startService(self): log.msg('start') reactor.callLater(1, stop) application = service.Application('app') ex = exitService() ex.setServiceParent(application)
Офлайн
http://twistedmatrix.com/trac/ticket/2182
и так далее В)
Офлайн