Node.js ansible npm安装从未完成

Node.js ansible npm安装从未完成,node.js,npm,ansible,ansible-playbook,Node.js,Npm,Ansible,Ansible Playbook,我正在使用Ansible自动安装和更新我的节点应用程序。当我执行“npm安装”任务时,它会挂起。我让它运行了大约45分钟,但它从未完成,也没有抛出错误 当我在主机上手动运行“npm I”时,它会抛出一个有关已弃用软件包的警告。有人知道如何把它运用到ansible戏剧中吗 - name: npm module install command: npm install chdir={{ home_dir.stdout }}/{{ item.code_dir }} with_ite

我正在使用Ansible自动安装和更新我的节点应用程序。当我执行“npm安装”任务时,它会挂起。我让它运行了大约45分钟,但它从未完成,也没有抛出错误

当我在主机上手动运行“npm I”时,它会抛出一个有关已弃用软件包的警告。有人知道如何把它运用到ansible戏剧中吗

  - name: npm module install
    command: npm install chdir={{ home_dir.stdout }}/{{ item.code_dir }}
    with_items:
       processes
快速更新:

我还使用npm模块尝试了同样的效果。没有提示我输入不推荐使用的包名称

  - name: npm install
    npm: path="{{ home_dir.stdout }}/{{ item.code_dir }}"
    with_items:
      processes

不确定哪一个影响更大,但我通过做两件事解决了这个问题:

  • 不推荐使用的包恰好是我需要全局安装的东西,所以我将它分配给另一个任务,该任务处理全局var安装并更新包名
  • 这个主机以前没有ssh到repo主机,所以我ssh到它并将它添加到已知的主机
  • 在这些之后,我的剧本如预期的那样运作。(拇指)

    (编辑)经审查,似乎已知的_主机一直是问题所在。当我回顾带有弃用警告的日志时,我看到前面有known_hosts提示符。希望这对其他人有所帮助。

    “with_items”采用数组,而不是散列。换句话说,“
    进程
    ”应该是“
    -进程
    ”。