Winrm或请求未安装:没有名为winrm的模块

时间:2019-03-04 08:41:36

标签: powershell jenkins ansible winrm

我有一个由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]

詹金斯版2.150.3

然后我有一个存储有Powershell脚本的Windows VM(192.168.0.203)和配置为连接到Windows VM并运行Powershell脚本的Ansible剧本。

当我直接从命令行运行Ansible-Playbook时,它工作正常,连接到Windows计算机并运行脚本。一切都很好。

我在Jenkins中实现Ansible来运行剧本时遇到了真正的麻烦。通过詹金斯运行剧本时,出现以下错误:

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

对我来说,它似乎正在运行剧本,但由于找不到Winrm模块而失败了。可能与Jenkins使用的帐户无法以某种方式找到winrm模块有关,但是如果我在我的帐户下运行相同的命令,它会确定吗?

很乐意发布其他配置等。如果这会有所帮助,但以为我会尽量使其尽可能简单。

1 个答案:

答案 0 :(得分:0)

就像处理这些事情一样,您花费数天时间尝试对其进行修复,然后在寻求帮助时就设法对其进行修复。 我很想说这只是安装或运行该应用的一个例子,但实际上,我真的不知道它发生了什么,重新启动后突然变成了生命,简直不敢相信这一切是的,但是你永远不知道!