У меня есть небольшая простая установка, состоящая из Jenkins & Ansible 2.7.8, работающей на Ubuntu 18.04.2 LTS (192.168.0.202):
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/home/jon/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
ansible python module location = /usr/lib/python2.7/dist-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.15rc1 (default, Nov 12 2018, 14:31:15) [GCC 7.3.0]
Jenkins ver.2.150.3
Затем у меня есть виртуальная машина Windows (192.168.0.203), в которой хранится сценарий Powershell, и Ansible playbook, настроенный для подключения к виртуальной машине Windows, и запуска сценария Powershell.
Когда я запускаю Ansible-Playbook прямо из командной строки, он работает нормально, подключается к машине с Windows и запускает скрипт.Все хорошо.
У меня действительно проблемы с внедрением Ansible в Jenkins для запуска playbook.Когда я запускаю playbook через Jenkins, я получаю следующую ошибку:
Building in workspace /var/lib/jenkins/workspace/Ansible-RunPS-1.0
[Ansible-RunPS-1.0] $ /usr/bin/ansible-playbook //etc/ansible/runPS.yml -f 5
PLAY [Runs remote PS script] ***************************************************
TASK [Gathering Facts] *********************************************************
[0;31mfatal: [192.168.0.203]: FAILED! => {"msg": "winrm or requests is not installed: No module named winrm"}[0m
Мне кажется, что запускается playbook, но происходит сбой, поскольку он не может найти модуль winrm.Может быть, это связано с тем, что учетная запись, которую использует Дженкинс, не может каким-то образом найти модуль winrm, но если я запускаю ту же команду под своей учетной записью, она находит это нормально?
Рад опубликовать другие конфигурации и т. Д.если бы это помогло, но подумал, что я постараюсь сделать это как можно более простым для начала.