script - Запуск локального скрипта на удалённом узле после его передачи
Описание
- Модуль
scriptпринимает имя скрипта, за которым следует список аргументов, разделённых пробелами. - Локальный скрипт по указанному пути будет передан на удалённый узел и затем выполнен.
- Указанный скрипт будет обработан через среду оболочки на удалённом узле.
- Данный модуль не требует наличия Python на удалённой системе, подобно модулю raw.
- Данный модуль также поддерживается для целевых систем Windows.
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| chdir (добавлен в версии 2.4) | Значение по умолчанию: None | Перейти в указанную директорию на удалённом узле перед запуском скрипта |
| creates (добавлен в версии 1.5) | Значение по умолчанию: None | Имя файла; если файл уже существует, этот шаг не будет выполнен. |
| decrypt (добавлен в версии 2.4) |
Yes | Данный параметр управляет автоматическим расшифрованием исходных файлов с использованием хранилища. |
| free_form обязательно | Значение по умолчанию: None | Путь к локальному файлу скрипта, за которым следуют необязательные аргументы. Нет параметра с именем «свободная форма»; см. примеры! |
| removes (добавлен в версии 1.5) | Значение по умолчанию: None | Имя файла; если файл не существует, этот шаг не будет выполнен. |
Примечания
Примечание
- В большинстве случаев предпочтительнее создавать модули Ansible, чем передавать скрипты. Преобразуйте свой скрипт в модуль Ansible для получения дополнительных баллов!
- Плагин подключения SSH принудительно назначит псевдотерминал с помощью -tt при выполнении скриптов. Псевдотерминалы не имеют канала stderr, и весь stderr отправляется в stdout. Если вы полагаетесь на отдельные ключи результатов stdout и stderr, пожалуйста, переключитесь на набор задач «копировать и выполнить команду», вместо использования модуля script.
- Данный модуль также поддерживается для целевых систем Windows.
- Если путь к локальному скрипту содержит пробелы, он должен быть заключён в кавычки.
Примеры
# Example from Ansible Playbooks
- script: /some/local/script.sh --some-arguments 1234
# Run a script that creates a file, but only if the file is not yet created
- script: /some/local/create_file.sh --some-arguments 1234
args:
creates: /the/created/file.txt
# Run a script that removes a file, but only if the file is not yet removed
- script: /some/local/remove_file.sh --some-arguments 1234
args:
removes: /the/removed/file.txt
Статус
Этот модуль помечен как stableinterface, что означает, что разработчики данного модуля гарантируют отсутствие несовместимых изменений интерфейса.
Поддержка
Для получения дополнительной информации о поддержке данного модуля компанией Red Hat, обратитесь к этой статье базы знаний
Автор
- Команда разработчиков Ansible
- 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.5/modules/script_module.html