Моя книга игр
- name: "Install python package 'requests'"
pip:
name: requests
executable: /usr/local/bin/python3 -m pip
become: yes
Какие ошибки с:
TASK [Install python package 'requests'] **************************
fatal: [integration]: FAILED! => changed=false
cmd: '''/usr/local/bin/python3 -m pip'' install requests'
msg: '[Errno 2] No such file or directory'
rc: 2
stderr: ''
stderr_lines: <omitted>
stdout: ''
stdout_lines: <omitted>
Я не устанавливал pip
или pip3
на управляемую ноду, поэтому executable: pip3
работать не будет.
Согласно документации , рекомендуемый способ добиться этого — использовать модуль easy_install, чтобы сделать pip доступным на управляемом узле, а затем использовать встроенный модуль pip
, как обычно.
Обратите внимание, что модуль
easy_install
может устанавливать только библиотеки Python. Таким образом, этот модуль не может удалять библиотеки. Обычно рекомендуется использовать модульansible.builtin.pip
, который вы можете сначала установить с помощьюcommunity.general.easy_install
.
Итак, в двух задачах:
- name: Install or update pip
community.general.easy_install:
name: pip
state: latest
become: yes
- name: Install python package 'requests'
ansible.builtin.pip:
name: requests
become: yes