fetch - Выгрузка файла с удаленных узлов
Описание
- Этот модуль работает как copy, но в обратном порядке. Он используется для выгрузки файлов с удаленных машин и сохранения их локально в файловой системе, организованной по имени хоста.
- Этот модуль также поддерживается для целей Windows.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| dest обязательно | По умолчанию: None | Директория для сохранения файла. Например, если директория dest это /backup, файл src с именем /etc/profile на хосте host.example.com, будет сохранён в /backup/host.example.com/etc/profile.
|
| fail_on_missing |
| Если установлено в 'yes', задача завершится с ошибкой, если удалённый файл не может быть прочитан по какой-либо причине. До Ansible-2.5, это значение срабатывало только в случае отсутствия исходного файла. Значение по умолчанию было изменено на "yes" в Ansible-2.5. |
| flat | Позволяет переопределить поведение по умолчанию, добавляя имя хоста/путь/к/файлу в пункт назначения. Если dest заканчивается на '/', он будет использовать имя файла-источника, подобно модулю copy. Очевидно, это удобно только если имена файлов уникальны. | |
| src обязательно | По умолчанию: None | Файл на удалённой системе для выгрузки. Должен быть файлом, а не каталогом. Возможность рекурсивной выгрузки будет добавлена в последующих версиях. |
| validate_checksum (добавлено в 1.4) |
| Проверить совпадение контрольных сумм исходного и целевого файлов после загрузки. псевдонимы: validate_md5 |
Примечания
Примечание
- При выполнении fetch с
become, модуль slurp также будет использоваться для выгрузки содержимого файла для определения удалённой контрольной суммы. Это фактически удваивает размер передачи, и в зависимости от размера файла может потреблять всю доступную память на удалённых или локальных хостах, вызываяMemoryError. По этой причине рекомендуется запускать этот модуль безbecomeвсякий раз, когда это возможно. - До Ansible-2.5 этот модуль не завершался с ошибкой, если чтение удалённого файла было невозможно, если не было установлено значение fail_on_missing. В Ansible-2.5+ авторам playbooks рекомендуется использовать fail_when или ignore_errors для получения этой возможности. Они также могут явно установить fail_on_missing в False, чтобы получить поведение без ошибок.
- Этот модуль также поддерживается для целей Windows.
Примеры
# 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
Статус
Этот модуль помечен как stableinterface, что означает, что разработчики этого модуля гарантируют, что не будут вноситься несовместимые изменения в интерфейс.
Поддержка
Для получения дополнительной информации о поддержке этого модуля Red Hat, пожалуйста, обратитесь к этой статье базы знаний
Автор
- Команда Ansible Core
- Michael DeHaan
Подсказка
Если вы заметите какие-либо проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/fetch_module.html