fetch - Загрузка файла с удалённых узлов
Описание
- Этот модуль работает как copy, но в обратном порядке. Он используется для загрузки файлов с удалённых машин и сохранения их локально в файловой структуре, организованной по имени хоста.
- Этот модуль также поддерживается для целевых систем Windows.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| dest обязательно | Каталог для сохранения файла. Например, если каталог dest — /backup, файл src с именем /etc/profile на хосте host.example.com, будет сохранён в /backup/host.example.com/etc/profile
| |
| fail_on_missing bool |
| При установке в 'да', задача завершится с ошибкой, если удалённый файл не может быть прочитан по какой-либо причине. До Ansible-2.5 эта настройка вызывала ошибку только в случае отсутствия исходного файла. Значение по умолчанию было изменено на "да" в Ansible-2.5. |
| flat | Позволяет переопределить поведение по умолчанию, добавляя имя хоста/путь/к/файлу в назначение. Если dest заканчивается на '/', будет использоваться имя файла источника, аналогично модулю copy. Очевидно, это полезно только если имена файлов уникальны. | |
| src обязательно | Файл на удалённой системе для загрузки. Это должен быть файл, а не каталог. Рекурсивная загрузка может быть добавлена в будущих релизах. | |
| validate_checksum bool (добавлен в 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, что означает, что разработчики этого модуля гарантируют, что не будут вноситься несовместимые изменения в интерфейс.
Техническое обслуживание
Этот модуль помечен как core, что означает, что он поддерживается командой Ansible Core. Подробнее см. Техническое обслуживание и поддержка модулей.
Список других модулей, поддерживаемых командой Ansible Core, см. здесь.
Поддержка
Дополнительную информацию о поддержке этого модуля компанией 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.6/modules/fetch_module.html