Spec-Zone.ru › Ansible 2.11

ansible.windows.win_copy – Копирует файлы в удаленные расположения на хостах Windows

Примечание

Этот плагин входит в состав коллекции ansible.windows (версия 1.3.0).

Для его установки используйте: ansible-galaxy collection install ansible.windows.

Для использования в плейбуке укажите: ansible.windows.win_copy.

  • Описание
  • Параметры
  • Примечания
  • См. также
  • Примеры
  • Возвращаемые значения

Описание

  • Модуль win_copy копирует файл с локального компьютера в удаленное расположение на компьютере с Windows.
  • Для не-Windows целей используйте модуль ansible.builtin.copy вместо него.

Примечание

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

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
backup
boolean
    Варианты:
  • нет ←
  • да
Определяет, нужно ли создавать резервную копию.
При значении yes создается резервная копия файла с информацией о времени, чтобы вы могли вернуть исходный файл в случае ошибки.
Резервная копия не создается, когда remote_src=False и копируются несколько файлов.
content
string
При использовании вместо src задает содержимое файла непосредственно указанным значением.
Для простых значений. Для сложных значений или с форматированием используйте модуль ansible.windows.win_template.
decrypt
boolean
    Варианты:
  • нет
  • да ←
Этот параметр управляет автоматическим расшифрованием исходных файлов с помощью vault.
dest
path / обязательно
Удаленный абсолютный путь, куда должен быть скопирован файл.
Если src – это каталог, то это тоже должен быть каталог.
Используйте \ для разделителей пути или \\ в "двойных кавычках".
Если dest заканчивается на \ то исходный файл или содержимое исходного файла будут скопированы в каталог без переименования.
Если dest – это несуществующий путь, он будет создан только если dest заканчивается на "/" или "\", или src – это каталог.
Если src и dest – это файлы, и если родительский каталог dest не существует, задача завершится ошибкой.
force
boolean
    Варианты:
  • нет
  • да ←
Если установлено в yes, файл будет передан только в том случае, если содержимое отличается от содержимого назначения.
Если установлено в no, файл будет передан только в том случае, если назначения не существует.
Если установлено в no, вычисление контрольной суммы содержимого не выполняется, что может улучшить производительность при работе с большими файлами.
local_follow
boolean
    Варианты:
  • нет
  • да ←
Этот флаг указывает, что ссылки на файловую систему в исходном дереве, если они существуют, должны быть обработаны.
remote_src
boolean
    Варианты:
  • нет ←
  • да
Если no, будет поиск src на исходной/управляющей машине.
Если yes, будет обращение к удаленной/целевой машине для src.
src
path
Локальный путь к файлу, который нужно скопировать на удаленный сервер; может быть абсолютным или относительным.
Если путь – это каталог, он копируется (включая имя исходной папки) рекурсивно в dest.
Если путь – это каталог и заканчивается на "/", копируются только содержимое этого каталога в назначение. В противном случае, если он не заканчивается на "/", копируется сам каталог со всем содержимым.
Если путь – это файл и dest заканчивается на "\", файл копируется в папку с тем же именем файла.
Обязательно, если не используется content.

Примечания

Примечание

  • В настоящее время win_copy не поддерживает копирование символических ссылок как локально в удаленный, так и удаленно в удаленный.
  • Рекомендуется использовать обратные слэши \ вместо / при работе с удаленными путями.
  • Поскольку win_copy работает через WinRM, это не очень эффективный механизм передачи. Если отправляете большие файлы, рассмотрите возможность размещения их на веб-сервисе и использования ansible.windows.win_get_url вместо этого.

См. также

См. также

community.general.assemble

Официальная документация по модулю community.general.assemble.

ansible.builtin.copy

Официальная документация по модулю ansible.builtin.copy.

ansible.windows.win_get_url

Официальная документация по модулю ansible.windows.win_get_url.

community.windows.win_robocopy

Официальная документация по модулю community.windows.win_robocopy.

Примеры

- name: Copy a single file
  ansible.windows.win_copy:
    src: /srv/myfiles/foo.conf
    dest: C:\Temp\renamed-foo.conf

- name: Copy a single file, but keep a backup
  ansible.windows.win_copy:
    src: /srv/myfiles/foo.conf
    dest: C:\Temp\renamed-foo.conf
    backup: yes

- name: Copy a single file keeping the filename
  ansible.windows.win_copy:
    src: /src/myfiles/foo.conf
    dest: C:\Temp\

- name: Copy folder to C:\Temp (results in C:\Temp\temp_files)
  ansible.windows.win_copy:
    src: files/temp_files
    dest: C:\Temp

- name: Copy folder contents recursively
  ansible.windows.win_copy:
    src: files/temp_files/
    dest: C:\Temp

- name: Copy a single file where the source is on the remote host
  ansible.windows.win_copy:
    src: C:\Temp\foo.txt
    dest: C:\ansible\foo.txt
    remote_src: yes

- name: Copy a folder recursively where the source is on the remote host
  ansible.windows.win_copy:
    src: C:\Temp
    dest: C:\ansible
    remote_src: yes

- name: Set the contents of a file
  ansible.windows.win_copy:
    content: abc123
    dest: C:\Temp\foo.txt

- name: Copy a single file as another user
  ansible.windows.win_copy:
    src: NuGet.config
    dest: '%AppData%\NuGet\NuGet.config'
  vars:
    ansible_become_user: user
    ansible_become_password: pass
    # The tmp dir must be set when using win_copy as another user
    # This ensures the become user will have permissions for the operation
    # Make sure to specify a folder both the ansible_user and the become_user have access to (i.e not %TEMP% which is user specific and requires Admin)
    ansible_remote_tmp: 'c:\tmp'

Возвращаемые значения

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

Ключ Возвращается Описание
backup_file
string
если backup=да
Имя созданного резервного файла.

Пример:
C:\Путь\К\Файлу.txt.11540.20150212-220915.bak
checksum
string
успех, src – это файл
SHA1 контрольная сумма файла после выполнения копирования.

Пример:
6e642bb8dd5c2e027bf21dd923337cbb4214f827
dest
string
изменено
Файл/путь назначения.

Пример:
C:\Temp\
operation
string
успех
Выполнялась ли операция копирования одного файла или копирование папки.

Пример:
file_copy
original_basename
string
изменено, src – это файл
Имя файла, скопированного файла.

Пример:
foo.txt
size
integer
изменено, src – это файл
Размер целевого файла после выполнения операции.

Пример:
1220
src
string
изменено
Исходный файл, использованный для копирования на целевом компьютере.

Пример:
/home/httpd/.ansible/tmp/ansible-tmp-1423796390.97-147729857856000/source


Авторы

  • Jon Hawkesworth (@jhawkesworth)
  • Jordan Borean (@jborean93)

© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/ansible/windows/win_copy_module.html

Spec-Zone.ru

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