Commit 3afa8b37 by Michael DeHaan

Improve check mode reporting for directories and file modes.

parent 71f77d15
...@@ -366,9 +366,9 @@ class AnsibleModule(object): ...@@ -366,9 +366,9 @@ class AnsibleModule(object):
uid = pwd.getpwnam(owner).pw_uid uid = pwd.getpwnam(owner).pw_uid
except KeyError: except KeyError:
self.fail_json(path=path, msg='chown failed: failed to look up user %s' % owner) self.fail_json(path=path, msg='chown failed: failed to look up user %s' % owner)
if self.check_mode:
return True
if orig_uid != uid: if orig_uid != uid:
if self.check_mode:
return True
try: try:
os.lchown(path, uid, -1) os.lchown(path, uid, -1)
except OSError: except OSError:
...@@ -388,9 +388,9 @@ class AnsibleModule(object): ...@@ -388,9 +388,9 @@ class AnsibleModule(object):
gid = grp.getgrnam(group).gr_gid gid = grp.getgrnam(group).gr_gid
except KeyError: except KeyError:
self.fail_json(path=path, msg='chgrp failed: failed to look up group %s' % group) self.fail_json(path=path, msg='chgrp failed: failed to look up group %s' % group)
if self.check_mode:
return True
if orig_gid != gid: if orig_gid != gid:
if self.check_mode:
return True
try: try:
os.lchown(path, -1, gid) os.lchown(path, -1, gid)
except OSError: except OSError:
......
...@@ -196,12 +196,14 @@ def main(): ...@@ -196,12 +196,14 @@ def main():
if prev_state != 'absent' and state == 'absent': if prev_state != 'absent' and state == 'absent':
try: try:
if prev_state == 'directory': if prev_state == 'directory':
if module.check_mode:
module.exit_json(changed=True)
if os.path.islink(path): if os.path.islink(path):
if module.check_mode:
module.exit_json(changed=True)
os.unlink(path) os.unlink(path)
else: else:
try: try:
if module.check_mode:
module.exit_json(changed=True)
shutil.rmtree(path, ignore_errors=False) shutil.rmtree(path, ignore_errors=False)
except: except:
module.exit_json(msg="rmtree failed") module.exit_json(msg="rmtree failed")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment