Ansible ignoruje ansible_python_interpreter jako parametr wiersza polecenia

0

Pytanie

jak widać z poniższego fragmentu kodu wykonywalnego ansible, wygląda na to, ignoruje zmienną ansible_python_interpreter. Bez uciekania się do pliku inwentaryzacji (to dla przenośnika gitlab, opartego na пакере hashicorp, który powoduje, ansible), jak mogłem zmusić ansible korzystać z wszelkich dostępnych informacji i mam wersję pythona? W tym przypadku to Ubuntu 18.04, dlatego chcę przejść z python-pythona 2.7-3.6.

Inny związanej z tym powodem może być fakt, że ansibles pkg (polityka?) zawsze instaluje python 2.7 na bionic.

root@ubuntu18:~# ansible --version
ansible 2.9.27
  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.17 (default, Feb 27 2021, 15:10:58) [GCC 7.5.0]
root@ubuntu18:~# /usr/bin/python3.6 --version
Python 3.6.9
root@ubuntu18:~# ansible --version -e 'ansible_python_interpreter=/usr/bin/python3.6'
ansible 2.9.27
  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.17 (default, Feb 27 2021, 15:10:58) [GCC 7.5.0]
root@ubuntu18:~#

Moim ostatnim środkiem, najwyraźniej, jest instalacja ansible z wykorzystaniem pip3, ale do tego potrzebny jest znaczna korespondencja jak yaml przenośnika, tak i json pakującego.

Każda pomoc była bym bardzo wdzięczna.

Owacje na stojąco

ansible python python-3.x ubuntu
2021-11-23 17:22:13
1

Najlepsza odpowiedź

0

Nie dostarczyły żadnych dowodów na to, że parametr jest ignorowany. ansible_python_intepreter stosuje się do wykonania modułów na obiektach docelowych, a nie wykonanie samego Ansible.

Proces zarządzania Ansible zawsze wykorzystuje interpreter języka Python, pod którym został zainstalowany; najlepszym sposobem, aby to zmienić-zmienić proces instalacji.

2021-11-23 17:27:15

Ach, "Proces zarządzania Ansible zawsze wykorzystuje interpreter języka Python, pod którym został zainstalowany;", to wyjaśnia pewne cechy zachowania, które widziałem. Jakieś pomysły, jak sprawdzić, pod jaką wersją był ustawiony?
U880D

Uciec ansible --version
flowerysong

Tam znalazłem przyczynę jakiegoś zachowania: ansible python module location = /usr/lib/python2.7/site-packages/ansible. Być może potrzebujemy podążać Ansible: Jak zmienić wersję pythona?
U880D

W innych językach

Ta strona jest w innych językach

Русский
..................................................................................................................
Italiano
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................