python - 为什么我不能使用 ansible 创建 virtualenv?
问题描述
我正在尝试使用 ansible 为 nodepool 用户创建一个 virtualenv,但它失败了,如下所述。我想成为 nodepool 用户,因为它使用 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.
解决方案
解决了这个问题,如下所示。
外壳:源 /var/lib/nodepool/.bashrc && virtualenv-3.5 /var/lib/nodepool/npvenv 创建=“/var/lib/nodepool/npvenv”
这不是我想做的,但它会做的。如果有人知道我会怎么做,请告知。也许这是不可能的,因为它没有拾取路径等。
我加入了创建选项,因为如果它存在,它会阻止重做。
推荐阅读
- python - 有没有办法限制 Ray 对象存储的最大内存使用量
- angularjs - 保护 Angular JS 表达式
- php - 使用laravel中的长度感知分页器搜索结果分页太慢
- html - 为没有属性的标签创建嵌套的相对 xpath
- angular - 如何在动态插入图像源的角度 2 中使用 onload 事件
- angular - angular-material:如何控制活动高亮颜色条的位置
- android - 我禁用了电话呼叫者视图的全屏,但如何禁用此视图?
- postgresql - 如何在 Windows 上无头(无终端)启动 postgres 服务器?
- android - 如何设置反应原生元素的尺寸以在不同的设备英寸尺寸中显示相同的尺寸
- linux - 我们可以复制curl包并在不安装的情况下在Linux上运行吗