Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Network
  • » twisted завершение приложения с кодом отличным от нуля [RSS Feed]

#1 Сен. 10, 2012 10:59:09

Юрчек
От:
Зарегистрирован: 2009-04-14
Сообщения: 45
Репутация: +  0  -
Профиль   Отправить e-mail  

twisted завершение приложения с кодом отличным от нуля

Есть некий сервис, код которого переодически обновляется. Хочется сделать так, чтобы он подтягивал свои обновления и сам перезапускался. Для этого я написал простенький скрипт на баше, который следит что сервис запущен и если он завершился с кодом отличным от нуля, а это значит скан обновленный скрипт, перезапускает его.
Но никак не получается завершить программу запущенную через 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)

Может стоит смотреть в сторону функций os.exec для реализации перезапуска программы?



Офлайн

#2 Сен. 20, 2012 00:35:56

slav0nic
Команда
От: dp.ua
Зарегистрирован: 2006-05-07
Сообщения: 2260
Репутация: +  41  -
Профиль   Отправить e-mail  

twisted завершение приложения с кодом отличным от нуля

Офлайн

  • Начало
  • » Network
  • » twisted завершение приложения с кодом отличным от нуля[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version