partially reverted previous change to deal with systemctl show status not returning errors on missing service Now it looks for not-found key instead of running status which does return error codes when service is present but in diff states. fixes #12216
This commit is contained in:
parent
c90bf9df98
commit
917b7071d6
1 changed files with 3 additions and 4 deletions
|
@ -522,13 +522,12 @@ class LinuxService(Service):
|
|||
def get_systemd_status_dict(self):
|
||||
|
||||
# Check status first as show will not fail if service does not exist
|
||||
(rc, out, err) = self.execute_command("%s status '%s'" % (self.enable_cmd, self.__systemd_unit,))
|
||||
if rc != 0:
|
||||
self.module.fail_json(msg='failure %d running systemctl status for %r: %s' % (rc, self.__systemd_unit, err))
|
||||
|
||||
(rc, out, err) = self.execute_command("%s show '%s'" % (self.enable_cmd, self.__systemd_unit,))
|
||||
if rc != 0:
|
||||
self.module.fail_json(msg='failure %d running systemctl show for %r: %s' % (rc, self.__systemd_unit, err))
|
||||
elif 'LoadState=not-found' in out:
|
||||
self.module.fail_json(msg='systemd could not find the requested service "%r": %s' % (self.__systemd_unit, err))
|
||||
|
||||
key = None
|
||||
value_buffer = []
|
||||
status_dict = {}
|
||||
|
|
Loading…
Reference in a new issue