fetch - Fetches a file from remote nodes
Synopsis
- This module works like copy, but in reverse. It is used for fetching files from remote machines and storing them locally in a file tree, organized by hostname.
- This module is also supported for Windows targets.
Options
parameter | required | default | choices | comments |
---|---|---|---|---|
dest | yes | A directory to save the file into. For example, if the dest directory is /backup a src file named /etc/profile on host host.example.com , would be saved into /backup/host.example.com/etc/profile
| ||
fail_on_missing | no | no |
| When set to 'yes', the task will fail if the remote file cannot be read for any reason. |
flat | no | Allows you to override the default behavior of appending hostname/path/to/file to the destination. If dest ends with '/', it will use the basename of the source file, similar to the copy module. Obviously this is only handy if the filenames are unique. | ||
src | yes | The file on the remote system to fetch. This must be a file, not a directory. Recursive fetching may be supported in a later release. | ||
validate_checksum (added in 1.4)
| no | yes |
| Verify that the source and destination checksums match after the files are fetched. aliases: validate_md5 |
Examples
# Store file into /tmp/fetched/host.example.com/tmp/somefile - fetch: src: /tmp/somefile dest: /tmp/fetched # Specifying a path directly - fetch: src: /tmp/somefile dest: /tmp/prefix-{{ inventory_hostname }} flat: yes # Specifying a destination path - fetch: src: /tmp/uniquefile dest: /tmp/special/ flat: yes # Storing in a path relative to the playbook - fetch: src: /tmp/uniquefile dest: special/prefix-{{ inventory_hostname }} flat: yes
Notes
Note
- When running fetch with
become
, the slurp module will also be used to fetch the contents of the file for determining the remote checksum. This effectively doubles the transfer size, and depending on the file size can consume all available memory on the remote or local hosts causing aMemoryError
. Due to this it is advisable to run this module withoutbecome
whenever possible. - This module is also supported for Windows targets.
Status
This module is flagged as stableinterface which means that the maintainers for this module guarantee that no backward incompatible interface changes will be made.
Maintenance Info
For more information about Red Hat’s this support of this module, please refer to this knowledge base article<https://access.redhat.com/articles/rhel-top-support-policies>
For help in developing on modules, should you be so inclined, please read Community Information & Contributing, Testing Ansible and Developing Modules.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/fetch_module.html