问题遇到的现象和发生背景
我需要使用jenkins为前端代码进行自动化打包,但是nodejs的安装环境需要jdk8,与jenkins的jdk11有差异
所以我使用docker来安装nodejs,并在jenkins中使用Execute shell执行打包命令
ls
pwd
echo $USER
sudo docker ps
sudo docker exec node bash -c "ls; \
node -v; \
cd www/; \
ls; \
npm run build;"
由于npm run build命令在打包完毕后,需要键盘输入ctrl+c退出,不退出则一直等待。
直接安装nodejs,问题依旧存在,必须键入ctrl+c才能退出,不接受任何shell命令,也找不到build.js文件中的‘build complete’行
于是遇到了jenkins脚本执行后无法继续也无法终止的问题
我的解答思路和尝试过的方法
我在网上找到的最好的解决方法,是找到build.js文件,并在最后增加强制退出。precess.exit(0)
源网页
http://t.csdn.cn/AmnDu
但是问题是我找遍nodejs容器中的所有build.js文件
都不存在‘ build complete.\n’这样的 执行成功提示 代码行,但是npm run build的命令执行完毕后又确实输出了build complete
所以很苦恼!
我想要达到的结果
1、想要知道是否有利用Execute shell发送ctrl+c信号的方法
2、想找到‘build complete’代码行具体存在于哪个文件,亦或是寻找npm run build执行路径的方法,网上的答案都很不理想。