Jenkins-通过SSH插件发布:在npm上出现错误

时间:2019-06-18 09:01:49

标签: node.js jenkins npm jenkins-plugins

我正在尝试使用Jenkins为我的node.js应用程序设置CI / CD管道。

我想要做的是通过jenkins登录到我的应用程序服务器,并借助ssh插件发布在服务器上执行命令 (https://wiki.jenkins.io/display/JENKINS/Publish+Over+SSH+Plugin)。

我选择了Send Files or Execute commands over SSH选项,并在Exec command部分中添加了以下命令。

cd <project-folder> && git pull origin master && npm install

我遇到类似npm not found的错误,但我尝试直接在服务器上没有错误。

所以我认为jenkins存在许可问题,但是我找不到解决方法

1 个答案:

答案 0 :(得分:0)

是,您已正确识别问题...其权限问题.. 我假设您已经在jenkins的“配置系统”部分的“ SSH远程主机”上添加了根登录详细信息。

  • 首先通过github中的Web钩子设置将GIT存储库拉到jenkins工作区。希望您也成功完成了此步骤

在“构建环境”中,选择“使用ssh在远程主机上执行shell脚本”,然后使用以下

cd <project-folder>  (Ex: cd /var/lib/jenkins/workspace/<project-folder>)

npm install 

注意:您应该在服务器中提供完整的服务器路径以避免权限..如果您使用的是localhost,则它可能会起作用,并且当您使用“使用ssh在远程主机上执行shell脚本”时,其他操作也非常重要,您应该访问只能通过root用户通过cpanel帐户登录。.这样可以避免权限问题。

一旦安装了NPM,请检查控制台日志中的“成功”,然后执行其他命令并建议删除“ npm install”,因为多次安装会增加应用程序的编译时间。