win_copy - Копирует файлы в удаленные расположения на хостах Windows
Новое в версии 1.9.2.
Обзор
- Модуль
win_copyкопирует файл с локального компьютера на удаленное расположение Windows. - Для целей, отличных от Windows, используйте модуль copy вместо этого.
Параметры
| параметр | обязательный | значение по умолчанию | возможные значения | комментарии |
|---|---|---|---|---|
| content (добавлен в 2.3)
| нет | Когда используется вместо src, устанавливает содержимое файла непосредственно в указанное значение. Это предназначено для простых значений, для сложных или форматированных значений используйте модуль шаблонов. | ||
| dest | да | Абсолютный удаленный путь, куда должен быть скопирован файл. Если src - это каталог, то и dest должен быть каталогом. Используйте \ для разделителей путей или \\ в "двойных кавычках". Если dest заканчивается на \ то исходный файл или содержимое исходного файла будут скопированы в каталог без переименования.Если dest - несуществующий путь, он будет создан только если dest заканчивается на "/" или "\", или src - это каталог.Если src и dest являются файлами и если родительский каталог dest не существует, то задача завершится ошибкой. | ||
| force (добавлен в 2.3)
| нет | да |
| Если установлено значение yes, файл будет скопирован только в том случае, если содержимое отличается от содержимого назначения.Если установлено значение no, файл будет скопирован только в том случае, если назначения не существует.Если установлено значение no, вычисление контрольной суммы содержимого не выполняется, что может улучшить производительность при работе с большими файлами. |
| local_follow (добавлен в 2.4)
| нет | да |
| Этот флаг указывает, что ссылки на файлы в дереве каталогов источника, если они существуют, должны быть пройдены. |
| remote_src (добавлен в 2.3)
| нет | нет |
| Если False, будет поиск src на исходной/главной машине; если True, поиск будет выполняться на удаленной/целевой машине. |
| src | да | Локальный путь к файлу, который необходимо скопировать на удаленный сервер; может быть абсолютным или относительным. Если путь является каталогом, он копируется (включая имя исходной папки) рекурсивно в dest. Если путь является каталогом и заканчивается "/", копируются только содержимое этого каталога в назначение. В противном случае, если не заканчивается "/", копируется сам каталог со всем содержимым. Если путь - файл, а dest заканчивается "\", файл копируется в папку с тем же именем файла. |
Примеры
- 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: True
- name: Copy a folder recursively where the source is on the remote host
win_copy:
src: C:\temp
dest: C:\ansible
remote_src: True
- name: Set the contents of a file
win_copy:
dest: C:\temp\foo.txt
content: abc123
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для этого модуля:
| имя | описание | возвращается | тип | пример |
|---|---|---|---|---|
| checksum | sha1 контрольная сумма файла после выполнения копирования | успех, src - файл | строка | 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 |
Примечания
Примечание
- Для целей, отличных от Windows, используйте модуль copy вместо этого.
- В настоящее время win_copy не поддерживает копирование символических ссылок как между локальными и удаленными машинами, так и между удаленными машинами.
- Рекомендуется использовать обратные слэши
\вместо/, при работе с удаленными путями. - Поскольку win_copy работает через WinRM, это не очень эффективный механизм передачи. При передаче больших файлов, рассмотрите возможность размещения их на веб-сервисе и использования модуля win_get_url вместо него.
Статус
Этот модуль помечен как stableinterface, что означает, что авторы этого модуля гарантируют, что не будут внесены несовместимые с предыдущими версиями изменения интерфейса.
Информация о техническом обслуживании
Для получения дополнительной информации о поддержке этого модуля компанией Red Hat, обратитесь к knowledge base article<https://access.redhat.com/articles/rhel-top-support-policies>.
Для помощи в разработке модулей, если вы так пожелаете, пожалуйста, прочитайте Информацию о сообществе и участии в разработке, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/win_copy_module.html