On Thu, Jun 29, 2023 at 10:30 AM cool prat <[email protected]> wrote: > > Hi Team, > > I want to use python3 for using k8s module (`kubernetes.core.k8s_info`) on > the ansible controller node which RHEL 7. > > Python2 is already installed. I have installed python3. > > I am trying to use python3 by setting ansible_python_interpreter var but its > still showing that its using python version 2 in the command like ansible > --version. > > > `ansible_python_interpreter` is already set at multiple level and even after > using all the options together, its still not picking up python3 and giving > same error. > > > Have set the var ansible_python_interpreter at i) inventory, ii) playbook, > iii) /home/sac/ansible.cfg and iv) with -e option as well in > ansible-playbook` command. > > i) Added in inventory - > > # ans.ini #localhost ansible_connection=local localhost > ansible_python_interpreter=/opt/rh/rh-python36/root/usr/bin/python3.6 > > ii) added in playbook > > - hosts: localhost connection: local gather_facts: no vars: > ansible_python_interpreter: /opt/rh/rh-python36/root/usr/bin/python3.6 tasks: > . . > > iii) ansible.cfg > > # cat ansible.cfg [defaults] ANSIBLE_PYTHON_INTERPRETER = > /opt/rh/rh-python36/root/usr/bin/python3.6 interpreter_python = > /opt/rh/rh-python36/root/usr/bin/python3.6 ansible_python_interpreter = > /opt/rh/rh-python36/root/usr/bin/python3.6 > > iv) Added as -e in ansible-playbook command, > > ansible-playbook -i ans.ini ans.yml -e > 'ansible_python_interpreter=/opt/rh/rh-python36/root/usr/bin/python3.6' > > Below showing python 2.7.5 > > # ansible --version ansible 2.9.27 config file = /etc/ansible/ansible.cfg > configured module search path = [u'/home/sac/.ansible/plugins/modules', > u'/usr/share/ansible/plugins/modules'] ansible python module location = > /usr/lib/python2.7/site-packages/ansible executable location = /bin/ansible > python version = 2.7.5 (default, Nov 16 2020, 22:23:17) [GCC 4.8.5 20150623 > (Red Hat 4.8.5-44)] > > How can i make changes so that ansible will start using python 3 > > Thanks,
RHEL 7 published RPMs for a package called "ansible" are from before the split, to "ansibl-core" which actually has ansible, and the "ansible" package which does not contain ansible, it has a dependency on "ansible-core" and installs more than 100 additional modules from the ansible galaxy collection. It really should have been called "ansible_collections" . You're going to hurt yourself if you keep trying to use that. In the short term, you can use "pip3 install --user ansible-core" to get a much more recent version, ansible-core 2.11. Or bump up to RHEL 8 and you can get a contemporary ansible-core via RPM and avoid these issues. -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/CAOCN9rxK3hS%3DRQZ7PMsS7PmrtRdZ_2WoOq25wTai0%2BRTPi3z_g%40mail.gmail.com.
