#python #ansible
#python #ansible
Вопрос:
Я пытаюсь использовать ansible playbook через vagrant. Я хочу, чтобы он использовал python 3x, поэтому я установил: ansible_python_interpreter: "/usr/bin/python3"
Но он показывает мне сообщение об ошибке: Ansible requires a minimum of Python2 version 2.6 or Python3 version 3.5. Current version: 3.4.3
когда я проверяю версию ansible с помощью ansible --version
, она показывает версию python равной 3.8.5
И если я попытаюсь явно указать версию python: ansible_python_interpreter: "/usr/bin/python3.8"
или ansible_python_interpreter: "/usr/local/lib/python3.8"
выдает ошибку not found, даже если эти установки python существуют.
Что может быть причиной этой аномалии и как я могу это исправить?
Комментарии:
1. Что
head -1 $(which ansible)
возвращает? Возможно, выansible
используете другую установку Python?2. Он возвращает это
#!/usr/bin/env python3
3. Хорошо, тогда он находит интерпретатор на основе
PATH
. Можете ли вы проверить, чтоwhich python3
возвращает? Кроме того, установлена ли у вас одна и та же версия Python на всех ваших целевых машинах?4. которую возвращает python3
/usr/bin/python3
. Пока нет целевых машин, я просто тестирую скрипт.5. Вам будет предложено это сделать, потому что узлы, на которых вы запускаете свой playbook, не имеют правильной версии python. Имейте в виду, что Ansible отправляет скрипты python с вашего контроллера на ваши узлы, а затем ваши узлы выполняют эти скрипты python, поэтому вам также нужна правильная версия python на узлах .