我正在编写一个脚本来通过 ansible 将代码重新部署到英特尔爱迪生。运行以下命令时出现错误。如果可能的话,我想知道如何在本地找到导致此问题的文件。我认为在服务器上引发错误的文件“/home/root/.ansible/tmp/ansible-tmp-1444631867.66-245111051532005/setup”可能是从本地存储库中的文件生成的。
但是,我似乎无法在本地 ansible 中找到此设置文件,并且在引发错误后,ansible 会从服务器(edison)中删除此文件。
$ ansible-playbook -i inventory.yml provision_edison.yml
failed: [192.168.1.196] => {"failed": true, "parsed": false}
Traceback (most recent call last):
File "/home/root/.ansible/tmp/ansible-tmp-1444631867.66-245111051532005/setup", line 196, in <module>
import syslog
ImportError: No module named syslog
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
我的库存文件inventory.yml
[edisons]
192.168.1.196
我的 provision_edison.yml 文件
---
- hosts: edisons
remote_user: root
tasks:
- name: "test if stuff is working"
shell: uname -a
我认为这是服务器上发生的 python 导入错误。我尝试查看服务器抛出的行号 196 是否对应于我在本地拥有的文件,但没有运气。
root@edison-01:/usr/bin# ./python
Python 2.7.3 (default, Aug 15 2014, 22:34:09)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import syslog
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named syslog