这看起来应该很简单:
tasks:
- name: install python packages
pip: name=${item} virtualenv=~/buildbot-env
with_items: [ buildbot ]
- name: create buildbot master
command: buildbot create-master ~/buildbot creates=~/buildbot/buildbot.tac
但是,除非首先获取 virtualenv 的激活脚本,否则该命令将不会成功,并且在Ansible 命令模块中似乎没有执行此操作的规定。
我已经尝试在各种 .profile、.bashrc、.bash_login 等中获取激活脚本,但没有成功。或者,还有 shell 命令,但它似乎有点尴尬:
- name: create buildbot master
shell: source ~/buildbot-env/bin/activate && \
buildbot create-master ~/buildbot \
creates=~/buildbot/buildbot.tac executable=/bin/bash
有没有更好的办法?