Spec-Zone.ru › Ansible

Модуль ansible.builtin.fetch – Загрузка файлов с удаленных узлов

Примечание

Этот модуль является частью ansible-core и включён во все установки Ansible. В большинстве случаев вы можете использовать короткое имя модуля fetch даже без указания ключевого слова collections. Однако мы рекомендуем использовать полное имя коллекции (FQCN) ansible.builtin.fetch для удобной ссылки на документацию модуля и для избежания конфликтов с другими коллекциями, которые могут иметь то же имя модуля.

  • Описание
  • Параметры
  • Атрибуты
  • Примечания
  • См. также
  • Примеры

Описание

  • Этот модуль работает, как ansible.builtin.copy, но в обратном порядке.
  • Он используется для загрузки файлов с удалённых машин и сохранения их локально в файловой структуре, организованной по имени хоста.
  • Файлы, которые уже существуют в dest , будут перезаписаны, если они отличаются от src.
  • Этот модуль также поддерживается для целевых систем Windows.

Примечание

Этот модуль имеет соответствующий плагин действия.

Параметры

Параметр

Комментарии

dest

строка / обязательно

Директория для сохранения файла.

Например, если директория dest имеет значение /backup, файл src с именем /etc/profile на хосте host.example.com, будет сохранён в /backup/host.example.com/etc/profile. Имя хоста основано на имени инвентаризации.

fail_on_missing

логическое значение

При установке в true, задача завершится с ошибкой, если удалённый файл не может быть прочитан по какой-либо причине.

Перед Ansible 2.5, установка этого значения вызывала ошибку только в случае отсутствия исходного файла.

По умолчанию это было изменено на true в Ansible 2.5.

Варианты:

  • false
  • true ← (по умолчанию)

flat

логическое значение

Позволяет переопределить стандартное поведение добавления hostname/path/to/file к целевому пути.

Если dest заканчивается на ‘/’, будет использовано имя файла без пути (basename), аналогично модулю копирования.

Это может быть полезно при работе с одним хостом или при загрузке файлов, имеющих уникальные имена для каждого хоста.

Если используется несколько хостов с одинаковым именем файла, файл будет перезаписан для каждого хоста.

Варианты:

  • false ← (по умолчанию)
  • true

src

строка / обязательно

Файл на удалённой системе для загрузки.

Это должен быть файл, а не директория.

Рекурсивный загрузке может быть поддержан в будущих релизах.

validate_checksum

логическое значение

Проверить, что контрольные суммы исходного и целевого файлов совпадают после загрузки.

Варианты:

  • false
  • true ← (по умолчанию)

Атрибуты

Атрибут

Поддержка

Описание

action

Поддержка: полная

Указывает, что у этого модуля есть соответствующий плагин действия, поэтому некоторые части параметров могут быть выполнены на контроллере

async

Поддержка: нет

Поддерживает использование с ключевым словом async

bypass_host_loop

Поддержка: нет

Принудительно выполняет «глобальную» задачу, которая не выполняется на каждом хосте, это обходит шаблонизацию по хостам, сериализацию, удушение и другие аспекты цикла

Условные операторы будут работать так, как если бы использовалось run_once, используемые переменные будут взяты с первого доступного хоста

Это действие не будет работать обычно вне стратегий синхронной обработки

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать предсказание изменений без модификации цели, если не поддерживается, действие будет пропущено.

diff_mode

Поддержка: полная

Возвращает подробную информацию о том, что изменилось (или, возможно, нуждается в изменении в режиме check_mode), когда в режиме diff

platform

Платформы: posix, windows

Целевые ОС/семьи, с которыми можно взаимодействовать

safe_file_operations

Поддержка: нет

Использует функции Ansible для строгого управления файлами, чтобы обеспечить правильные разрешения и предотвратить повреждение данных

vault

Поддержка: нет

Может автоматически расшифровать зашифрованные файлы Ansible

Примечания

Примечание

  • При выполнении fetch с become, модуль ansible.builtin.slurp также будет использован для получения содержимого файла для определения удалённой контрольной суммы. Это фактически удваивает размер передачи, и в зависимости от размера файла может израсходовать весь доступный объём памяти на удалённых или локальных хостах, вызвав MemoryError. По этой причине рекомендуется запускать этот модуль без become всякий раз, когда это возможно.
  • До Ansible 2.5 этот модуль не завершался ошибкой, если чтение удалённого файла было невозможно, если не было установлено fail_on_missing.
  • В Ansible 2.5 и более поздних версиях авторам плейбуков рекомендуется использовать fail_when или ignore_errors для получения этой возможности. Они также могут явно установить fail_on_missing в false для получения поведения без ошибок.

См. также

См. также

ansible.builtin.copy

Копирование файлов на удалённые расположения.

ansible.builtin.slurp

Вычитывание файла с удалённых узлов.

Примеры

- 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

Авторы

  • Команда Ansible Core
  • Michael DeHaan

Ссылки на сборку

  • Система отслеживания проблем
  • Репозиторий (исходный код)
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/ansible/builtin/fetch_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API