Ansible: запускать модули на целевом хосте в виртуальной среде. - PullRequest
1 голос
/ 28 мая 2020

Я хочу запустить модуль os_server на целевом хосте, который имеет виртуальную среду, в которой установлен openstacksdk. Если я попытаюсь запустить сценарий, как показано ниже, это приведет к ошибке «конфликтующие операторы действия: virtualenv, os_server». Как правильно указать виртуальную среду, чтобы ansible ее использовал? Я не хочу устанавливать openstacksdk глобально и просто использую venv.

- name: Create Server
  virtualenv: "/home/user/otc2/bin/activate"
  os_server:
    state: present
    auto_ip: false
    ...

1 Ответ

1 голос
/ 28 мая 2020

Вы должны установить ansible_python_interpreter hostvar для этого хоста, чтобы он указывал на двоичный файл python внутри virtualenv на удаленном компьютере, который выглядит как /home/user/otc2/bin/python на основе вашего опубликованного фрагмента

...