Merge pull request #1905 from evverx/fix-legacy-services-enabled

Fix service.enabled on: Debian 8, Ubuntu 15.04
This commit is contained in:
Brian Coca 2015-08-12 10:18:50 -04:00
commit 0c403781a7

View file

@ -503,9 +503,20 @@ class LinuxService(Service):
self.svc_initctl = location['initctl'] self.svc_initctl = location['initctl']
def get_systemd_service_enabled(self): def get_systemd_service_enabled(self):
(rc, out, err) = self.execute_command("%s is-enabled %s" % (self.enable_cmd, self.__systemd_unit,)) def sysv_exists(name):
script = '/etc/init.d/' + name
return os.access(script, os.X_OK)
def sysv_is_enabled(name):
return bool(glob.glob('/etc/rc?.d/S??' + name))
service_name = self.__systemd_unit
(rc, out, err) = self.execute_command("%s is-enabled %s" % (self.enable_cmd, service_name,))
if rc == 0: if rc == 0:
return True return True
elif sysv_exists(service_name):
return sysv_is_enabled(service_name)
else:
return False return False
def get_systemd_status_dict(self): def get_systemd_status_dict(self):