Added a fail_on_missing option to fetch.
This commit is contained in:
parent
6d41983173
commit
e45a0fd61d
2 changed files with 15 additions and 3 deletions
|
@ -46,6 +46,8 @@ class ActionModule(object):
|
||||||
options.update(utils.parse_kv(module_args))
|
options.update(utils.parse_kv(module_args))
|
||||||
source = options.get('src', None)
|
source = options.get('src', None)
|
||||||
dest = options.get('dest', None)
|
dest = options.get('dest', None)
|
||||||
|
fail_on_missing = options.get('fail_on_missing', False)
|
||||||
|
fail_on_missing = utils.boolean(fail_on_missing)
|
||||||
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)
|
||||||
|
@ -73,7 +75,10 @@ class ActionModule(object):
|
||||||
result = dict(msg="unable to calculate the md5 sum of the remote file", file=source, changed=False)
|
result = dict(msg="unable to calculate the md5 sum of the remote file", file=source, changed=False)
|
||||||
return ReturnData(conn=conn, result=result)
|
return ReturnData(conn=conn, result=result)
|
||||||
if remote_md5 == '1':
|
if remote_md5 == '1':
|
||||||
result = dict(msg="the remote file does not exist, not transferring, ignored", file=source, changed=False)
|
if fail_on_missing:
|
||||||
|
result = dict(failed=True, msg="the remote file does not exist", file=source)
|
||||||
|
else:
|
||||||
|
result = dict(msg="the remote file does not exist, not transferring, ignored", file=source, changed=False)
|
||||||
return ReturnData(conn=conn, result=result)
|
return ReturnData(conn=conn, result=result)
|
||||||
if remote_md5 == '2':
|
if remote_md5 == '2':
|
||||||
result = dict(msg="no read permission on remote file, not transferring, ignored", file=source, changed=False)
|
result = dict(msg="no read permission on remote file, not transferring, ignored", file=source, changed=False)
|
||||||
|
|
|
@ -7,8 +7,9 @@ short_description: Fetches a file from remote nodes
|
||||||
description:
|
description:
|
||||||
- This module works like M(copy), but in reverse. It is used for fetching
|
- This module works like M(copy), but in reverse. It is used for fetching
|
||||||
files from remote machines and storing them locally in a file tree,
|
files from remote machines and storing them locally in a file tree,
|
||||||
organized by hostname. Note that if the source file is missing, it
|
organized by hostname. Note that this module was originally written to
|
||||||
returns status=ok.
|
transfer log files that were not necessarily present, therefore, by
|
||||||
|
default, if the source file is missing, it does not fail ;
|
||||||
version_added: "0.2"
|
version_added: "0.2"
|
||||||
options:
|
options:
|
||||||
src:
|
src:
|
||||||
|
@ -26,6 +27,12 @@ options:
|
||||||
C(/backup/host.example.com/etc/profile)
|
C(/backup/host.example.com/etc/profile)
|
||||||
required: true
|
required: true
|
||||||
default: null
|
default: null
|
||||||
|
fail_on_missing:
|
||||||
|
description:
|
||||||
|
- Makes it fails when the source file is missing.
|
||||||
|
required: false
|
||||||
|
choices: [ "yes", "no" ]
|
||||||
|
default: "no"
|
||||||
examples:
|
examples:
|
||||||
- code: "fetch: src=/var/log/messages dest=/home/logtree"
|
- code: "fetch: src=/var/log/messages dest=/home/logtree"
|
||||||
description: "Example from Ansible Playbooks"
|
description: "Example from Ansible Playbooks"
|
||||||
|
|
Loading…
Reference in a new issue