Adding parameter to synchronize module to suppress verbose output and print error only

This commit is contained in:
Mandar Kulkarni 2021-07-11 22:39:10 -07:00
parent f6fa00bfff
commit 5149c41229

View file

@ -417,6 +417,7 @@ def main():
delay_updates=dict(type='bool', default=True),
mode=dict(type='str', default='push', choices=['pull', 'push']),
link_dest=dict(type='list', elements='str'),
print_err_only=dict(type='bool',default=False)
),
supports_check_mode=True,
)
@ -457,6 +458,7 @@ def main():
verify_host = module.params['verify_host']
link_dest = module.params['link_dest']
delay_updates = module.params['delay_updates']
print_err_only = module.params['print_err_only']
if '/' not in rsync:
rsync = module.get_bin_path(rsync, required=True)
@ -606,6 +608,10 @@ def main():
else:
(rc, out, err) = module.run_command(cmd)
# If print_errors_only is true, supress the verbose output by suppressing changes but allowing errors
if print_err_only:
return module.fail_json(msg=err)
if rc:
return module.fail_json(msg=err, rc=rc, cmd=cmdstr)