Я разработал пользовательский модуль ANSIBLE, который зависит от сторонней библиотеки PyYAML.Однако при запуске playbook выдается
ansible_module_my_module.py, line 5, in <module>
import yaml
ImportError: No module named yaml
. Я вижу PyYAML в файле ansible needs.txt (https://github.com/ansible/ansible/blob/stable-2.8/requirements.txt), поэтому я знаю, что он установлен / используется на хост-компьютере. Мне интересно, есть лирекомендуемый способ установить его на удаленном компьютере?
Я могу добавить шаг в playbook, используя модуль pip ansible, чтобы установить его на удаленный компьютер. Что-то вроде
- hosts: all
tasks:
- name: Installing PyYAML python library using Ansible pip module
pip:
name: PyYAML
Но это значитplaybook знает подробности реализации о модулях, спрятанных глубоко в стеке, что кажется неправильным. Я ожидаю, что есть какой-то способ сказать ansible установить сторонние библиотеки на удаленной машине как часть его установки. Например, добавление require.txtв моем модуле ansible добавляет его к настройке, но я не могу найти элегантный способ сделать это. Любая помощь приветствуется.