Spec-Zone.ru › Ansible 2.9

script – Выполняет локальный скрипт на удалённом узле после его передачи

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

Описание

  • Модуль script принимает имя скрипта, за которым следует список аргументов, разделённых пробелами.
  • Требуется либо команда произвольной формы, либо параметр cmd, см. примеры.
  • Локальный скрипт в указанном пути будет передан на удалённый узел и затем выполнен.
  • Указанный скрипт будет обработан через среду оболочки на удалённом узле.
  • Данному модулю не требуется Python на удалённой системе, подобно модулю raw.
  • Этот модуль также поддерживается для целевых систем Windows.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
chdir
-
добавлено в 2.4
Изменить текущую директорию на удалённом узле перед выполнением скрипта.
cmd
строка
Путь к локальному скрипту для выполнения, за которым могут следовать необязательные аргументы.
creates
-
Имя файла на удалённом узле. Если файл уже существует, этот шаг не будет выполнен.
decrypt
булево
добавлено в 2.4
    Варианты:
  • нет
  • да ←
Этот параметр управляет автоматическим расшифрованием исходных файлов с помощью vault.
executable
-
добавлено в 2.6
Имя или путь исполняемого файла для вызова скрипта.
free_form
-
Путь к локальному файлу скрипта, за которым могут следовать необязательные аргументы.
removes
-
Имя файла на удалённом узле. Если файла не существует, этот шаг не будет выполнен.

Примечания

Примечание

  • Вместо передачи скриптов обычно предпочтительнее создавать Ansible-модули. Преобразуйте свой скрипт в Ansible-модуль для дополнительных баллов!
  • Подключаемый модуль ssh соединения будет принудительно назначат выделение псевдо-терминала через -tt, когда выполняются скрипты. Псевдо-терминалы не имеют канала stderr, и все данные stderr отправляются в stdout. Если вам необходимы отдельные ключи результата stdout и stderr, используйте набор задач копирования и выполнения, вместо модуля script.
  • Если путь к локальному скрипту содержит пробелы, он должен быть заключён в кавычки.
  • Этот модуль также поддерживается для целевых систем Windows.

См. также

См. также

shell – Выполнение команд оболочки на узлах
Официальная документация по модулю shell.
win_shell – Выполнение команд оболочки на целевых узлах
Официальная документация по модулю win_shell.

Примеры

- name: Run a script with arguments (free form)
  script: /some/local/script.sh --some-argument 1234

- name: Run a script with arguments (using 'cmd' parameter)
  script:
    cmd: /some/local/script.sh --some-argument 1234

- name: Run a script only if file.txt does not exist on the remote node
  script: /some/local/create_file.sh --some-argument 1234
  args:
    creates: /the/created/file.txt

- name: Run a script only if file.txt exists on the remote node
  script: /some/local/remove_file.sh --some-argument 1234
  args:
    removes: /the/removed/file.txt

- name: Run a script using an executable in a non-system path
  script: /some/local/script
  args:
    executable: /some/remote/executable

- name: Run a script using an executable in a system path
  script: /some/local/script.py
  args:
    executable: python3

Статус

  • Этот модуль гарантированно будет иметь обратную совместимость изменений интерфейса в дальнейшем. [stableinterface]
  • Этот модуль поддерживается основной командой Ansible. [core]

Поддержка Red Hat

Дополнительная информация о поддержке этого модуля Red Hat доступна в статье из базы знаний Red Hat по данной ссылке.

Авторы

  • Команда Ansible Core
  • 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.9/modules/script_module.html

Spec-Zone.ru

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