From bfb4564f9d9cc8e8a894b0fb9ac799a2da400e69 Mon Sep 17 00:00:00 2001 From: Mark McLoughlin Date: Fri, 11 Jan 2008 10:36:25 +0000 Subject: Add service.is_running() helper Add a simple helper to check whether a service is running and make ipa-server-install use it to check whether ntpd is running. Signed-off-by: Mark McLoughlin --- ipa-server/ipa-install/ipa-server-install | 11 +---------- ipa-server/ipaserver/service.py | 11 +++++++++++ 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/ipa-server/ipa-install/ipa-server-install b/ipa-server/ipa-install/ipa-server-install index ee5e929d..5f0879d7 100644 --- a/ipa-server/ipa-install/ipa-server-install +++ b/ipa-server/ipa-install/ipa-server-install @@ -239,15 +239,6 @@ def read_admin_password(): admin_password = read_password("IPA admin") return admin_password -def check_ntp(): - ret_code = 1 - p = subprocess.Popen(["/sbin/service", "ntpd", "status"], stdout=subprocess.PIPE, - stderr=subprocess.PIPE) - stdout, stderr = p.communicate() - - return p.returncode - - def main(): global ds ds = None @@ -452,7 +443,7 @@ def main(): print "\t This ticket will allow you to use the IPA tools (e.g., ipa-adduser)" print "\t and the web user interface." - if check_ntp() != 0: + if not service.is_running("ntpd"): print "\t3. Kerberos requires time synchronization between clients" print "\t and servers for correct operation. You should consider enabling ntpd." diff --git a/ipa-server/ipaserver/service.py b/ipa-server/ipaserver/service.py index 90d0e606..f835b3f5 100644 --- a/ipa-server/ipaserver/service.py +++ b/ipa-server/ipaserver/service.py @@ -30,6 +30,14 @@ def start(service_name): def restart(service_name): ipautil.run(["/sbin/service", service_name, "restart"]) +def is_running(service_name): + ret = True + try: + ipautil.run(["/sbin/service", service_name, "status"]) + except CalledProcessError: + ret = False + return ret + def chkconfig_on(service_name): ipautil.run(["/sbin/chkconfig", service_name, "on"]) @@ -60,6 +68,9 @@ class Service: def restart(self): restart(self.service_name) + def is_running(self): + return is_running(self.service_name) + def chkconfig_on(self): chkconfig_on(self.service_name) -- cgit