我有一台Jenkins服务器通过SSH向另一台机器发送命令以部署网站,作为这个过程的一部分,我正在使用Grunt来构建SASS。如果我登录到服务器并运行“grunt build-dev”,它可以正常工作,但是如果我使用以下命令通过SSH将命令发送到同一服务器
ssh myserver.org 'cd /var/www/myserver.org/htdocs/sites/all/themes/myserver; grunt build-dev'
我收到如下错误;
npm WARN package.json server@1.0.0 No README data
Running "sass:dev" (sass) task
Warning:
You need to have Ruby and Sass installed and in your PATH for this task to work.
More info: https://github.com/gruntjs/grunt-contrib-sass
Use --force to continue.
Aborted due to warnings.
我已经使用npm install为Grunt添加了依赖项而没有运气,我也尝试将npm install添加到SSH命令发送到服务器,该服务器按预期安装了依赖项。
答案 0 :(得分:1)
正如jim mcnamara在回答我的问题时指出的那样,这个问题确实是PATH变量的一个问题。我设法在another Stack Overflow question的帮助下解决了这个问题。我在{SSH}命令的开头添加了source /etc/profile
。
或者我可能已经使用RVM来全局安装Ruby / Sass而不是本地安装SSH。