我已经通过 Homebrew 安装了 Ansible (v1.4.4) 和 Python (2.7.6)。我正在创建一个 Ansible 剧本,用于在 Mac(小牛队)上设置本地开发机器。当我使用 mysql_db 模块导入 MySQL 数据库时,Ansible 抱怨“需要 python mysqldb 模块”。所以我用 pip 安装了它(来自 Hombrew)pip install MySQL-python
:. 重新运行后,我收到相同的错误消息。的输出cat /usr/local/bin/ansible-playbook
是
#!/bin/bash
PYTHONPATH="/usr/local/Cellar/ansible/1.4.4/libexec/lib/python2.7/site-packages" exec "/usr/local/Cellar/ansible/1.4.4/libexec/bin/ansible-playbook" "$@"
使用 pip 安装会将包放在“ /usr/local/lib/python2.7/site-packages
”中,但 Ansible 有自己的 site-packages 文件夹,因此全局包不会干扰 Ansible 的要求。将 MySQL-python 安装到 Ansible 的 site-packages 文件夹的最佳方法是什么?
默认情况下,Ansible 将使用 Python 安装,
/usr/bin/python
除非您另有说明。如果您希望它使用 Homebrew Python,只需将其添加到您的库存文件中:[local]
localhost ansible_python_interpreter=/usr/local/bin/python
如果你需要在 OSX 控制机器上使用一个包,你需要在之后运行这两行
brew install ansible
https://github.com/Homebrew/homebrew/issues/29079
我需要在我的控制机器上使用 Passlib加密提示变量
以上答案都不适合我;可能与优胜美地有关。
以下对我有用:
在此之后,我能够将加密密码输入到
var_prompt
's.在 Homebrew ansible 中使用自己的 python。您可以使用命令打包库