added optional ignore_md5_mismatch parameter

This commit is contained in:
Bruce Pennypacker 2013-08-28 14:16:57 +00:00
parent 49b0ff18a7
commit 41c474d129
2 changed files with 12 additions and 3 deletions

View file

@ -50,6 +50,8 @@ class ActionModule(object):
flat = utils.boolean(flat) flat = utils.boolean(flat)
fail_on_missing = options.get('fail_on_missing', False) fail_on_missing = options.get('fail_on_missing', False)
fail_on_missing = utils.boolean(fail_on_missing) fail_on_missing = utils.boolean(fail_on_missing)
ignore_md5_mismatch = options.get('ignore_md5_mismatch', False)
ignore_md5_mismatch = utils.boolean(ignore_md5_mismatch)
if source is None or dest is None: if source is None or dest is None:
results = dict(failed=True, msg="src and dest are required") results = dict(failed=True, msg="src and dest are required")
return ReturnData(conn=conn, result=results) return ReturnData(conn=conn, result=results)
@ -112,10 +114,10 @@ class ActionModule(object):
f.write(remote_data) f.write(remote_data)
f.close() f.close()
new_md5 = utils.md5(dest) new_md5 = utils.md5(dest)
if new_md5 != remote_md5: if not ignore_md5_mismatch and new_md5 != remote_md5:
result = dict(failed=True, md5sum=new_md5, msg="md5 mismatch", file=source, dest=dest) result = dict(failed=True, md5sum=new_md5, msg="md5 mismatch", file=source, dest=dest, remote_md5sum=remote_md5)
return ReturnData(conn=conn, result=result) return ReturnData(conn=conn, result=result)
result = dict(changed=True, md5sum=new_md5, dest=dest) result = dict(changed=True, md5sum=new_md5, dest=dest, remote_md5sum=remote_md5)
return ReturnData(conn=conn, result=result) return ReturnData(conn=conn, result=result)
else: else:
result = dict(changed=False, md5sum=local_md5, file=source, dest=dest) result = dict(changed=False, md5sum=local_md5, file=source, dest=dest)

View file

@ -34,6 +34,13 @@ options:
required: false required: false
choices: [ "yes", "no" ] choices: [ "yes", "no" ]
default: "no" default: "no"
ignore_md5_mismatch:
version_added: "1.3"
description:
- Do not check the md5sum of the destination file. Useful if transferring files that may change during the transfer, such as log files.
required: false
choices: [ "yes", "no" ]
default: "no"
flat: flat:
version_added: "1.2" version_added: "1.2"
description: description: