mirror of
https://github.com/ansible-collections/community.general.git
synced 2026-05-06 13:22:48 +00:00
- Fix to return error message back to the module. (#31035)
This commit is contained in:
@@ -150,10 +150,16 @@ class Cli:
|
||||
if check_rc and rc != 0:
|
||||
self._module.fail_json(msg=to_text(err, errors='surrogate_then_replace'))
|
||||
|
||||
try:
|
||||
out = self._module.from_json(out)
|
||||
except ValueError:
|
||||
out = str(out).strip()
|
||||
if not check_rc and rc != 0:
|
||||
try:
|
||||
out = self._module.from_json(err)
|
||||
except ValueError:
|
||||
out = to_text(err, errors='surrogate_then_replace').strip()
|
||||
else:
|
||||
try:
|
||||
out = self._module.from_json(out)
|
||||
except ValueError:
|
||||
out = to_text(out, errors='surrogate_then_replace').strip()
|
||||
|
||||
responses.append(out)
|
||||
return responses
|
||||
|
||||
@@ -107,7 +107,11 @@ def map_obj_to_commands(want, have, module):
|
||||
|
||||
|
||||
def map_config_to_obj(module):
|
||||
output = run_commands(module, ['show banner %s' % module.params['banner']])[0]
|
||||
output = run_commands(module, ['show banner %s' % module.params['banner']], False)[0]
|
||||
|
||||
if "Invalid command" in output:
|
||||
module.fail_json(msg="banner: exec may not be supported on this platform. Possible values are : exec | motd")
|
||||
|
||||
if isinstance(output, dict):
|
||||
output = list(output.values())[0]
|
||||
|
||||
@@ -148,6 +152,7 @@ def main():
|
||||
supports_check_mode=True)
|
||||
|
||||
warnings = list()
|
||||
|
||||
check_args(module, warnings)
|
||||
|
||||
result = {'changed': False}
|
||||
@@ -155,7 +160,6 @@ def main():
|
||||
result['warnings'] = warnings
|
||||
want = map_params_to_obj(module)
|
||||
have = map_config_to_obj(module)
|
||||
|
||||
commands = map_obj_to_commands(want, have, module)
|
||||
result['commands'] = commands
|
||||
|
||||
|
||||
Reference in New Issue
Block a user