2013-02-12 1 views
1

Я недопонимаю?Я не понимаю, что делает fabtools.service.is_running?

когда я бегу:

status some-service 

он отвечает

some-service stop/waiting 

но когда я бегу:

def blah(): 
    if fabtools.service.is_running('some-service'): 
     print "some-service is running!" 

он говорит, что он работает, когда я четко знаю, что это не , Не понял ли я, что делает функция is_running?

EDIT:

глядя на исходный код:

def is_running(service): 
    """ 
    Check if a service is running. 

    :: 

     import fabtools 

     if fabtools.service.is_running('foo'): 
      print "Service foo is running!" 
    """ 
    with settings(hide('running', 'stdout', 'stderr', 'warnings'), warn_only=True): 
     res = sudo('service %(service)s status' % locals()) 
     return res.succeeded 

он все еще путает меня в том смысле, что он, кажется, чтобы проверить, если услуга не является ли он работает

+0

Что такое целевая машина os? – Redian

ответ

0

Ты прав. Реализация только проверяет, существует ли служба, а не статус.
я изменил строку следующего содержания:

res = sudo('service {} status|grep "running"'.format(service)) 

... и теперь он работает.