lineinfile - fix broken exception handling (#70846)

* prevent (ExceptionType) is not subscriptable errors
* tweak error message and use text conversion
* add to_text import
This commit is contained in:
Matt Davis 2020-07-28 07:30:32 -07:00 committed by GitHub
parent be4be926c4
commit 45c2eb6c0a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 4 additions and 2 deletions

View file

@ -0,0 +1,2 @@
bugfixes:
- lineinfile - fix not subscriptable error in exception handling around file creation

View file

@ -212,7 +212,7 @@ import tempfile
# import module snippets # import module snippets
from ansible.module_utils.basic import AnsibleModule from ansible.module_utils.basic import AnsibleModule
from ansible.module_utils._text import to_bytes, to_native from ansible.module_utils._text import to_bytes, to_native, to_text
def write_changes(module, b_lines, dest): def write_changes(module, b_lines, dest):
@ -267,7 +267,7 @@ def present(module, dest, regexp, line, insertafter, insertbefore, create,
try: try:
os.makedirs(b_destpath) os.makedirs(b_destpath)
except Exception as e: except Exception as e:
module.fail_json(msg='Error creating %s Error code: %s Error description: %s' % (b_destpath, e[0], e[1])) module.fail_json(msg='Error creating %s (%s)' % (to_text(b_destpath), to_text(e)))
b_lines = [] b_lines = []
else: else: