Системные специфические переменные в недоступных
Ansible ожидает python 2. В моей системе (Arch Linux) "python" - это Python 3, поэтому мне нужно передать -e "ansible_python_interpreter=/usr/bin/python2"
с каждой командой.
ansible-playbook my-playbook.yml -e "ansible_python_interpreter=/usr/bin/python2"
Есть ли возможность установить ansible_python_interpreter
глобально в моей системе, поэтому мне не нужно передавать ее каждой команде? Я не хочу добавлять его в свои плей-книжки, так как не все системы, в которых работает учебник, имеют настройку, похожую на мою.
Ответы
Ответ 1
Ну вы можете установить тремя способами
Надеюсь, что поможет
Ответ 2
Я решил использовать возможность Ansible для источника инвентаря из каталога. Таким образом, я мог бы определить ansible_python_interpreter
для localhost только для локальной машины
inventory_dir/local
[local]
localhost ansible_python_interpreter="/path/to/alternate/bin/python"
И тогда просто используйте каталог, как файл инвентаря.
ansible-playbook -i inventory_dir playbook.yml