ImportError: нет модуля с именем syslog, ansible, edison
Я пишу сценарий для повторного развертывания кода на Intel Edison через 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
Мой файл инвентаря
[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
2 ответа
Ряд одноразовых сборок Python не включает библиотеку системного журнала, хотя технически она является частью ядра. Эта проблема должна быть исправлена в Ansible 2.0 следующим коммитом: https://github.com/ansible/ansible/commit/c57200925f7fc3c77da9a0b671ef7328cad15d8d
Что-то в вашей среде Python должно быть отключено. syslog
был частью стандартной библиотеки с версии 2.6. Это Unix-машина? Это чистая установка Python? Я бы проверил такие вещи, как ваш путь к Python, а также посмотрел, можете ли вы импортировать другие стандартные библиотеки в этот ящик.