win_copy — Копирование файлов на удалённые расположения на хостах Windows
Новое в версии 1.9.2.
Обзор
- Модуль
win_copyкопирует файл с локальной машины на удалённое расположение в системе Windows. - Для целей, отличных от Windows, используйте модуль copy вместо него.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| content (добавлено в 2.3) | При использовании вместо src, напрямую задаёт содержимое файла указанным значением. Подходит для простых значений; для сложных или форматированных данных, используйте модуль шаблонов. | |
| decrypt bool (добавлено в 2.5) |
| Данный параметр управляет авторасшифровкой исходных файлов с помощью хранилища vault. |
| dest обязательно | Абсолютный удалённый путь, куда следует скопировать файл. Если src — это каталог, то и dest должен быть каталогом. Используйте \ в качестве разделителя пути или \\ в «двойных кавычках». Если dest оканчивается на \ , то источник или содержимое источника будут скопированы в каталог без переименования.Если dest — несуществующий путь, он будет создан только в том случае, если dest оканчивается на «/» или «\», либо src представляет собой каталог.Если src и dest являются файлами и родительский каталог dest отсутствует, задача завершится с ошибкой. | |
| force bool (добавлено в 2.3) |
| Если установлено yes, файл будет передан только в случае, если его содержимое отличается от содержимого назначения.Если установлено no, файл будет передан только в том случае, если назначения не существует.Если установлено no, вычисление контрольной суммы содержимого не выполняется, что может повысить производительность при работе с большими файлами. |
| local_follow bool (добавлено в 2.4) |
| Флаг, указывающий, что ссылки на файловую систему в дереве исходных данных, если они существуют, должны быть пройдены. |
| remote_src bool (добавлено в 2.3) |
| Если no, он будет искать src на исходной/главной машине.Если yes, он будет искать src на удалённой/целевой машине. |
| src обязательно | Локальный путь к файлу, который нужно скопировать на удалённый сервер; может быть абсолютным или относительным. Если путь — это каталог, он копируется (включая имя исходной папки) рекурсивно в dest. Если путь — каталог, оканчивающийся на «/», копируются только файлы внутри этого каталога. В противном случае, если путь не оканчивается на «/», копируется сам каталог со всем содержимым. Если путь — это файл, а dest оканчивается на «\», файл копируется в папку с тем же именем файла. |
Примечания
Примечание
- Для целей, отличных от Windows, используйте модуль copy вместо него.
- В настоящее время win_copy не поддерживает копирование символьных ссылок как локально на удалённый сервер, так и удалённо на удалённый сервер.
- Рекомендуется использовать обратные слэши
\вместо/при работе с удалёнными путями. - Поскольку win_copy выполняется через WinRM, это не очень эффективный механизм передачи. При отправке больших файлов рекомендуется разместить их на веб-сервисе и использовать модуль win_get_url вместо него.
Примеры
- name: Copy a single file
win_copy:
src: /srv/myfiles/foo.conf
dest: C:\Temp\renamed-foo.conf
- name: Copy a single file keeping the filename
win_copy:
src: /src/myfiles/foo.conf
dest: C:\Temp\
- name: Copy folder to C:\Temp (results in C:\Temp\temp_files)
win_copy:
src: files/temp_files
dest: C:\Temp
- name: Copy folder contents recursively
win_copy:
src: files/temp_files/
dest: C:\Temp
- name: Copy a single file where the source is on the remote host
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
win_copy:
src: C:\Temp
dest: C:\ansible
remote_src: yes
- name: Set the contents of a file
win_copy:
content: abc123
dest: C:\Temp\foo.txt
Возвращаемые значения
Общие возвращаемые значения описаны здесь. Следующие поля уникальны для данного модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| checksum строка | успех, src — это файл | контрольная сумма sha1 файла после выполнения копирования Пример: 6e642bb8dd5c2e027bf21dd923337cbb4214f827 |
| dest строка | изменено | целевой файл/путь Пример: C:\Temp\ |
| operation строка | успех | было выполнено копирование одного файла или каталога Пример: file_copy |
| original_basename строка | изменено, src — это файл | имя файла, скопированного из исходного файла Пример: foo.txt |
| size целое число | изменено, src — это файл | размер целевого объекта после выполнения Пример: 1220 |
| src строка | изменено | исходный файл, использованный для копирования на целевой машине Пример: /home/httpd/.ansible/tmp/ansible-tmp-1423796390.97-147729857856000/source |
Статус
Этот модуль помечен как stableinterface, что означает, что разработчики данного модуля гарантируют отсутствие обратной несовместимости в изменениях интерфейса.
Техническое обслуживание
Этот модуль помечен как core, что означает, что его поддерживает Команда Ansible Core. Подробнее см. Техническое обслуживание и поддержка модулей.
Список других модулей, также поддерживаемых командой Ansible Core, см. здесь.
Поддержка
Дополнительную информацию о поддержке этого модуля компанией Red Hat можно найти в этой статье базы знаний базы знаний
Автор
- Jon Hawkesworth (@jhawkesworth)
- Jordan Borean (@jborean93)
Подсказка
Если вы обнаружите проблемы в этом руководстве, вы можете отредактировать этот документ, чтобы улучшить его.
© 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/win_copy_module.html