linux - 带有 nvm 的 Ansible 命令模块

标签 linux ansible nvm

我正在尝试使用 Ansible 执行此命令:

- name: install node v5.5.0
  sudo: yes
  shell: nvm ls-remote
  environment:
    http_proxy: http://17.99.193.229:3128
    https_proxy: http://17.99.193.229:3128

我尝试了 shell 和命令。

使用命令时:我收到此错误:

"[Errno 2] No such file or directory", "rc": 2"

使用 shell 时:我收到此错误:

"fatal: [gocdagent-dev-01.rno.apple.com]: FAILED! => {"changed": true, "cmd": "nvm ls-remote", "delta": "0:00:00.016365", "end": "2016-05-16 18:26:07.259729", "failed": true, "rc": 127, "start": "2016-05-16 18:26:07.243364", "stderr": "/bin/sh: nvm: command not found", "stdout": "", "stdout_lines": [], "warnings": []}"

我可以直接在系统上执行nvm命令。为什么 Ansible 无法运行 nvm

最佳答案

Nvm 不是二进制文件,您必须先加载它:

- name: install node v5.5.0
  shell: . <NVM_DIR>/.nvm/nvm.sh && nvm ls-remote
  environment:
    http_proxy: http://17.99.193.229:3128
    https_proxy: http://17.99.193.229:3128

关于linux - 带有 nvm 的 Ansible 命令模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37260844/

相关文章:

linux - 使用 KMS 设置控制台视频分辨率

windows - 进程间通信(IPC)的例子

node.js - nvm vs 海军vs n |包处理比较

node.js - 更新 NVM Node 版本管理器 creationix 版本

python - 使用 ansible API 打印 hoSTList

node.js - 使用 NVM 时找不到 NPM 和 NODE 命令

c - 为什么系统调用 signal() 不调用处理程序?

python - 如何找到文件所在的挂载点?

ansible - 从 ansible playbook 中执行 docker-compose

python - 安西 bool 。覆盖单个字典键