mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Improve check mode reporting for directories and file modes.
This commit is contained in:
parent
71f77d1583
commit
3afa8b373e
2 changed files with 8 additions and 6 deletions
|
@ -366,9 +366,9 @@ class AnsibleModule(object):
|
|||
uid = pwd.getpwnam(owner).pw_uid
|
||||
except KeyError:
|
||||
self.fail_json(path=path, msg='chown failed: failed to look up user %s' % owner)
|
||||
if orig_uid != uid:
|
||||
if self.check_mode:
|
||||
return True
|
||||
if orig_uid != uid:
|
||||
try:
|
||||
os.lchown(path, uid, -1)
|
||||
except OSError:
|
||||
|
@ -388,9 +388,9 @@ class AnsibleModule(object):
|
|||
gid = grp.getgrnam(group).gr_gid
|
||||
except KeyError:
|
||||
self.fail_json(path=path, msg='chgrp failed: failed to look up group %s' % group)
|
||||
if orig_gid != gid:
|
||||
if self.check_mode:
|
||||
return True
|
||||
if orig_gid != gid:
|
||||
try:
|
||||
os.lchown(path, -1, gid)
|
||||
except OSError:
|
||||
|
|
|
@ -196,12 +196,14 @@ def main():
|
|||
if prev_state != 'absent' and state == 'absent':
|
||||
try:
|
||||
if prev_state == 'directory':
|
||||
if os.path.islink(path):
|
||||
if module.check_mode:
|
||||
module.exit_json(changed=True)
|
||||
if os.path.islink(path):
|
||||
os.unlink(path)
|
||||
else:
|
||||
try:
|
||||
if module.check_mode:
|
||||
module.exit_json(changed=True)
|
||||
shutil.rmtree(path, ignore_errors=False)
|
||||
except:
|
||||
module.exit_json(msg="rmtree failed")
|
||||
|
|
Loading…
Reference in a new issue