mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Fix breakage in lineinfile check mode when target file does not exist.
Similarly to https://github.com/ansible/ansible/issues/6182, checking of the file attributes should be avoided in check mode when the file didn't originally exist. Also, avoid creating parent directories in check mode. Fixes https://github.com/ansible/ansible/issues/9546
This commit is contained in:
parent
104f91ed3b
commit
60ed80f99a
1 changed files with 4 additions and 1 deletions
|
@ -192,7 +192,7 @@ def present(module, dest, regexp, line, insertafter, insertbefore, create,
|
|||
if not create:
|
||||
module.fail_json(rc=257, msg='Destination %s does not exist !' % dest)
|
||||
destpath = os.path.dirname(dest)
|
||||
if not os.path.exists(destpath):
|
||||
if not os.path.exists(destpath) and not module.check_mode:
|
||||
os.makedirs(destpath)
|
||||
lines = []
|
||||
else:
|
||||
|
@ -282,6 +282,9 @@ def present(module, dest, regexp, line, insertafter, insertbefore, create,
|
|||
backupdest = module.backup_local(dest)
|
||||
write_changes(module, lines, dest)
|
||||
|
||||
if module.check_mode and not os.path.exists(dest):
|
||||
module.exit_json(changed=changed, msg=msg, backup=backupdest)
|
||||
|
||||
msg, changed = check_file_attrs(module, changed, msg)
|
||||
module.exit_json(changed=changed, msg=msg, backup=backupdest)
|
||||
|
||||
|
|
Loading…
Reference in a new issue