Пытаясь использовать GNS3 для отработки сценария ansible, существует экземпляр docker, называемый «Автоматизация сети» со встроенным ansible. Однако он все еще использует Python 2.7 в качестве интерпретатора:
root@Network-Automation:~# ansible --version
ansible 2.7.11
config file = /etc/ansible/ansible.cfg
configured module search path = [u'/root/.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.12 (default, Nov 12 2018, 14:36:49) [GCC 5.4.0 20160609]
Я понимаю, что могу использовать "ansible -playbook --version -e 'ansible_python_interpreter = / usr / bin / python3' "команда для запуска playbook с Python версия 3, или я могу указать var в playbook:
- name: Common package
hosts: all
gather_facts: no
vars:
ansible_python_interpreter: /usr/bin/python3
roles:
- { role: python, tags: [ init, python, common, addusers] }
...
...
Однако я хотел бы иметь постоянный способ заставить ansible использовать Python3 версия. Как мне этого добиться? Спасибо.