Почему я не могу создать virtualenv, используя ansible? - PullRequest
0 голосов
/ 20 декабря 2018

Я пытаюсь создать virtualenv для пользователя nodepool с использованием ansible, но это не помогает, как описано ниже.Я хочу стать пользователем пула узлов, так как он использует python3.5, тогда как все остальные используют сервер по умолчанию, 2.7.5.Кажется, что он не может получить версию 3.5.

Игра:

- name: Create nodepool venv
  become: true
  become_user: nodepool
  become_method: su
  command: virtualenv-3.5 /var/lib/nodepool/npvenv

Ошибка:

fatal: [ca-o3lscizuul]: FAILED! => {"changed": false, "cmd": "virtualenv-3.5 /var/lib/nodepool/npvenv", "failed": true, "msg": "[Errno 2] No such file or directory", "rc": 2}

Работает из оболочки.

[root@host ~]# su nodepool
[nodepool@host root]$ virtualenv-3.5 /var/lib/nodepool/npvenv
Using base prefix '/opt/rh/rh-python35/root/usr'
New python executable in /var/lib/nodepool/npvenv/bin/python3
Also creating executable in /var/lib/nodepool/npvenv/bin/python
Installing setuptools, pip, wheel...done.

1 Ответ

0 голосов
/ 20 декабря 2018

Обошел проблему следующим образом.

shell: source /var/lib/nodepool/.bashrc && virtualenv-3.5 / var / lib / nodepool / npvenv create = "/ var / lib / nodepool /npvenv "

Это не так, как я хотел бы, но это подойдет.Если кто-нибудь знает, как я могу сделать, как первоначально опубликовано, пожалуйста, сообщите.Возможно, это невозможно, так как он не обрабатывает пути захвата и т. Д.

Я добавил опцию create, поскольку она предотвращает повторное выполнение, если оно существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...