knowledge/technology/tools/Ansible/modules/ansible.builtin.fetch.md

39 lines
1.9 KiB
Markdown
Raw Normal View History

2023-12-04 10:02:23 +00:00
# ansible.builtin.fetch
- Fetch files from remote nodes
- This module works like [ansible.builtin.copy](ansible.builtin.copy.md), but in reverse.
- It is used for fetching files from remote machines and storing them locally in a file tree, organized by hostname.
- Files that already exist at dest will be overwritten if they are different than the src.
## Parameter
| Parameter | Type | Default | Description |
| --------------------- | ----------------- | ------- | ---------------------------------------------------------------------------------------- |
| **dest** | string / required | - | A directory to save the file into. |
2024-01-17 08:44:04 +00:00
| **fail_on_missing** | boolean | true | When set to `true`, the task will fail if the remote file cannot be read for any reason. |
| **src** | string / required | - | The file on the remote system to fetch. This must be a file, not a directory. |
2023-12-04 10:02:23 +00:00
| **validate_checksum** | boolean | true | Verify that the source and destination checksums match after the files are fetched. |
## Examples
```yaml
- name: Store file into /tmp/fetched/host.example.com/tmp/somefile
ansible.builtin.fetch:
src: /tmp/somefile
dest: /tmp/fetched
- name: Specifying a path directly
ansible.builtin.fetch:
src: /tmp/somefile
dest: /tmp/prefix-{{ inventory_hostname }}
flat: yes
- name: Specifying a destination path
ansible.builtin.fetch:
src: /tmp/uniquefile
dest: /tmp/special/
flat: yes
- name: Storing in a path relative to the playbook
ansible.builtin.fetch:
src: /tmp/uniquefile
dest: special/prefix-{{ inventory_hostname }}
flat: yes
```