mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
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))
|
||||
source = options.get('src', 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:
|
||||
results = dict(failed=True, msg="src and dest are required")
|
||||
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)
|
||||
return ReturnData(conn=conn, result=result)
|
||||
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)
|
||||
if remote_md5 == '2':
|
||||
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:
|
||||
- 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,
|
||||
organized by hostname. Note that if the source file is missing, it
|
||||
returns status=ok.
|
||||
organized by hostname. Note that this module was originally written to
|
||||
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"
|
||||
options:
|
||||
src:
|
||||
|
@ -26,6 +27,12 @@ options:
|
|||
C(/backup/host.example.com/etc/profile)
|
||||
required: true
|
||||
default: null
|
||||
fail_on_missing:
|
||||
description:
|
||||
- Makes it fails when the source file is missing.
|
||||
required: false
|
||||
choices: [ "yes", "no" ]
|
||||
default: "no"
|
||||
examples:
|
||||
- code: "fetch: src=/var/log/messages dest=/home/logtree"
|
||||
description: "Example from Ansible Playbooks"
|
||||
|
|
Loading…
Reference in a new issue