【发布时间】:2015-04-21 14:42:12
【问题描述】:
我正在尝试在 Ubuntu 14.04 上使用 ansible 引导 Rails 开发环境,使用 rbenv 来处理管理 ruby 版本。我有一本可以成功完成各种工作的剧本,但我已经在this gist中删除了相关部分
运行此任务时:
- name: Install ruby with rbenv
sudo_user: "{{ username }}"
#command: rbenv install {{ ruby_version }}
command: zsh -lc "rbenv install {{ ruby_version }}"
我收到以下错误
failed: [localhost] => {"changed": true, "cmd": ["zsh", "-lc", "rbenv install 2.1.2"], "delta": "0:00:00.005791", "end": "2015-04-21 09:31:19.184810", "rc": 127, "start": "2015-04-21 09:31:19.179019"}
stderr: zsh:1: command not found: rbenv
之前的所有任务都成功了,包括获取 出于某种原因,在运行此程序时,我收到一个错误,即未安装 rbenv。
您可以看到我仅使用“rbenv install”注释掉了,因为有人建议,由于 rbenv 依赖于您的某些东西在您的 .bashrc(或在我的情况下为 .zshrc),您需要使用 shell 运行它。但这也不起作用。
我还尝试使用raw 模块添加一个任务来重新启动我的shell。我尝试使用shell 而不是command 运行。
Here's my zshrc 以防万一。
我检查了this answer,但他们只是提到了在较新版本中使用“when”的问题。也没有人回复this question,类似。
【问题讨论】:
-
在您的 PATH 中找不到 rbenv 二进制文件。您是否尝试过采购您的
~/.bashrc(或您在其中声明rbenv init的任何文件)?而且,你还记得安装rbenvgithub.com/sstephenson/rbenv#basic-github-checkout之后添加这些行吗?
标签: ruby ansible rbenv ansible-playbook