在jenkins里面配置npm run start(egg-scripts start --title=xxxxx --daemon)命令启动完项目又被关闭了,但是,在项目目录我用终端运行npm run start命令的话,能正常启动。


// 前面日志无异常信息,省略部分日志
2018-12-26 17:20:49,901 INFO 1961 [egg-security] compose 7 middlewares into one security middleware
2018-12-26 17:20:49,901 INFO 1961 [egg:loader] Use middleware: securities
2018-12-26 17:20:49,901 INFO 1961 [egg:loader] Use middleware: i18n
2018-12-26 17:20:49,902 INFO 1961 [egg:loader] Use middleware: access
2018-12-26 17:20:49,902 INFO 1961 [egg:loader] Loaded middleware from ["/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-session/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-security/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-jsonp/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-onerror/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-i18n/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-schedule/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-multipart/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-logrotator/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-static/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-view/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-view-vue-ssr/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-alinode/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/app/middleware"]
2018-12-26 17:20:49,907 INFO 1961 [egg:loader] Controller loaded: /root/.jenkins/workspace/lx2-solution-html-build/app/controller
2018-12-26 17:20:49,909 INFO 1960 Use coreMiddleware order: ["meta","siteFile","notfound","static","bodyParser","overrideMethod","session","securities","i18n"]
2018-12-26 17:20:49,909 INFO 1960 Use appMiddleware order: ["access"]
2018-12-26 17:20:49,911 INFO 1960 [egg:loader] Use middleware: meta
2018-12-26 17:20:49,911 INFO 1960 [egg:loader] Use middleware: siteFile
2018-12-26 17:20:49,912 INFO 1960 [egg:loader] Use middleware: notfound
2018-12-26 17:20:49,912 INFO 1960 [egg-static] starting static serve /public/ -> /root/.jenkins/workspace/lx2-solution-html-build/public
2018-12-26 17:20:49,913 INFO 1960 [egg:loader] Use middleware: static
2018-12-26 17:20:49,914 INFO 1960 [egg:loader] Use middleware: bodyParser
2018-12-26 17:20:49,914 INFO 1960 [egg:loader] Use middleware: overrideMethod
2018-12-26 17:20:49,915 INFO 1960 [egg:loader] Use middleware: session
2018-12-26 17:20:49,917 INFO 1960 [egg-security] use csrf middleware
2018-12-26 17:20:49,918 INFO 1960 [egg-security] use methodnoallow middleware
2018-12-26 17:20:49,918 INFO 1960 [egg-security] use noopen middleware
2018-12-26 17:20:49,919 INFO 1960 [egg-security] use nosniff middleware
2018-12-26 17:20:49,920 INFO 1960 [egg-security] use xssProtection middleware
2018-12-26 17:20:49,921 INFO 1960 [egg-security] use xframe middleware
2018-12-26 17:20:49,921 INFO 1960 [egg-security] use dta middleware
2018-12-26 17:20:49,921 INFO 1960 [egg-security] compose 7 middlewares into one security middleware
2018-12-26 17:20:49,921 INFO 1960 [egg:loader] Use middleware: securities
2018-12-26 17:20:49,922 INFO 1960 [egg:loader] Use middleware: i18n
2018-12-26 17:20:49,922 INFO 1960 [egg:loader] Use middleware: access
2018-12-26 17:20:49,922 INFO 1960 [egg:loader] Loaded middleware from ["/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-session/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-security/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-jsonp/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-onerror/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-i18n/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-schedule/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-multipart/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-logrotator/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-static/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-view/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-view-vue-ssr/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-alinode/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/app/middleware"]
2018-12-26 17:20:49,942 INFO 1961 [egg:core] dump config after load, 31ms
2018-12-26 17:20:49,944 INFO 1960 [egg:loader] Controller loaded: /root/.jenkins/workspace/lx2-solution-html-build/app/controller
2018-12-26 17:20:49,958 INFO 1961 [egg:core:ready_stat] end ready task /root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-core/lib/egg.js:287:10, remain ["/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher/lib/init.js:15:14"]
2018-12-26 17:20:49,959 INFO 1960 [egg:core] dump config after load, 10ms
2018-12-26 17:20:49,970 INFO 1960 [egg:core:ready_stat] end ready task /root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-core/lib/egg.js:287:10, remain ["/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher/lib/init.js:15:14"]
2018-12-26 17:20:49,973 INFO 1961 [egg-watcher:application] watcher start success
2018-12-26 17:20:49,973 INFO 1961 [egg:core:ready_stat] end ready task /root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher/lib/init.js:15:14, remain []
2018-12-26 17:20:49,978 INFO 1960 [egg-watcher:application] watcher start success
2018-12-26 17:20:49,978 INFO 1960 [egg:core:ready_stat] end ready task /root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher/lib/init.js:15:14, remain []
2018-12-26 17:20:49,993 INFO 1943 [master] app_worker#1:1960 started at 7001, remain 1 (1354ms)
2018-12-26 17:20:49,997 INFO 1943 [master] app_worker#2:1961 started at 7001, remain 0 (1358ms)
2018-12-26 17:20:49,998 INFO 1943 [master] egg started on http://127.0.0.1:7001 (2487ms)
2018-12-26 17:20:50,044 INFO 1960 [app_worker] receive signal SIGTERM, exiting with code:0
2018-12-26 17:20:50,044 INFO 1961 [app_worker] receive signal SIGTERM, exiting with code:0
2018-12-26 17:20:50,048 INFO 1961 [app_worker] beforeExit success
2018-12-26 17:20:50,048 INFO 1961 [app_worker] exit with code:0
2018-12-26 17:20:50,084 INFO 1943 [master] app_worker#2:1961 disconnect, suicide: false, state: disconnected, current workers: ["1","2","3"]
2018-12-26 17:20:50,085 INFO 1943 [master] app_worker#3:1980 start, state: none, current workers: ["1","2","3"]
2018-12-26 17:20:50,085 INFO 1943 [master] receive signal SIGTERM, closing
2018-12-26 17:20:50,087 INFO 1943 [master] send kill SIGTERM to app workers, will exit with code:0 after 5000ms
2018-12-26 17:20:50,087 INFO 1943 [master] wait 5000ms
[2018-12-26 17:20:50.134] [cfork:master:1943] worker:1960 exit (code: null, exitedAfterDisconnect: false, state: dead, isDead: true, isExpected: false, worker.disableRefork: true)
[2018-12-26 17:20:50.135] [cfork:master:1943] worker:1961 exit (code: null, exitedAfterDisconnect: false, state: dead, isDead: true, isExpected: true, worker.disableRefork: true)
[2018-12-26 17:20:50.137] [cfork:master:1943] worker:1960 disconnect (exitedAfterDisconnect: false, state: disconnected, isDead: true, worker.disableRefork: true)
[2018-12-26 17:20:50.137] [cfork:master:1943] don't fork, because worker:1960 exit event emit before disconnect
2018-12-26 17:20:50,137 INFO 1943 [master] app_worker#1:1960 disconnect, suicide: false, state: disconnected, current workers: ["3"]
2018-12-26 17:20:50,799 INFO 1980 Plugin development is disabled by env unmatched, require env(local) but got env is prod
in prod config
2018-12-26 17:20:50,831 INFO 1980 [egg:core] App root: /root/.jenkins/workspace/lx2-solution-html-build
2018-12-26 17:20:50,831 INFO 1980 [egg:core] All *.log files save on "/root/.jenkins/workspace/lx2-solution-html-build/logs"
2018-12-26 17:20:50,831 INFO 1980 [egg:core] Loaded enabled plugin [{"enable":true,"package":"egg-session","name":"session","dependencies":[],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-session","version":"3.1.0"},{"enable":true,"package":"egg-security","name":"security","dependencies":[],"optionalDependencies":["session"],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-security","version":"2.4.1"},{"enable":true,"package":"egg-jsonp","name":"jsonp","dependencies":[],"optionalDependencies":["security"],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-jsonp","version":"2.0.0"},{"enable":true,"package":"egg-onerror","name":"onerror","dependencies":[],"optionalDependencies":["jsonp"],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-onerror","version":"2.1.0"},{"enable":true,"package":"egg-i18n","name":"i18n","dependencies":[],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-i18n","version":"2.0.0"},{"enable":true,"package":"egg-watcher","name":"watcher","dependencies":[],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher","version":"3.1.0"},{"enable":true,"package":"egg-schedule","name":"schedule","dependencies":[],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-schedule","version":"3.6.0"},{"enable":true,"package":"egg-multipart","name":"multipart","dependencies":[],"optionalDependencies":["schedule"],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-multipart","version":"2.4.0"},{"enable":true,"package":"egg-logrotator","name":"logrotator","dependencies":["schedule"],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-logrotator","version":"3.0.5"},{"enable":true,"package":"egg-static","name":"static","dependencies":[],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-static","version":"2.1.1"},{"enable":true,"package":"egg-view","name":"view","dependencies":[],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-view","version":"2.1.0"},{"enable":true,"package":"egg-view-vue-ssr","name":"vuessr","dependencies":[],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/config/plugin.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-view-vue-ssr","version":"3.2.1"},{"enable":true,"package":"egg-alinode","name":"alinode","dependencies":[],"optionalDependencies":[],"env":[],"from":"/root/.jenkins/workspace/lx2-solution-html-build/config/plugin.prod.js","path":"/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-alinode","version":"2.0.1"}]
2018-12-26 17:20:51,093 INFO 1980 [egg:logger] init all loggers with options: {"dir":"/root/.jenkins/workspace/lx2-solution-html-build/logs","encoding":"utf8","env":"prod","level":"INFO","consoleLevel":"DEBUG","disableConsoleAfterReady":true,"outputJSON":false,"buffer":true,"appLogName":"lx2-solution-html-web.log","coreLogName":"egg-web.log","agentLogName":"egg-agent.log","errorLogName":"common-error.log","coreLogger":{},"allowDebugAtProd":false,"type":"application"}
2018-12-26 17:20:51,160 INFO 1980 [egg-multipart] stream mode enable
2018-12-26 17:20:51,254 INFO 1980 Use coreMiddleware order: ["meta","siteFile","notfound","static","bodyParser","overrideMethod","session","securities","i18n"]
2018-12-26 17:20:51,254 INFO 1980 Use appMiddleware order: ["access"]
2018-12-26 17:20:51,256 INFO 1980 [egg:loader] Use middleware: meta
2018-12-26 17:20:51,256 INFO 1980 [egg:loader] Use middleware: siteFile
2018-12-26 17:20:51,256 INFO 1980 [egg:loader] Use middleware: notfound
2018-12-26 17:20:51,257 INFO 1980 [egg-static] starting static serve /public/ -> /root/.jenkins/workspace/lx2-solution-html-build/public
2018-12-26 17:20:51,258 INFO 1980 [egg:loader] Use middleware: static
2018-12-26 17:20:51,258 INFO 1980 [egg:loader] Use middleware: bodyParser
2018-12-26 17:20:51,259 INFO 1980 [egg:loader] Use middleware: overrideMethod
2018-12-26 17:20:51,260 INFO 1980 [egg:loader] Use middleware: session
2018-12-26 17:20:51,261 INFO 1980 [egg-security] use csrf middleware
2018-12-26 17:20:51,262 INFO 1980 [egg-security] use methodnoallow middleware
2018-12-26 17:20:51,263 INFO 1980 [egg-security] use noopen middleware
2018-12-26 17:20:51,264 INFO 1980 [egg-security] use nosniff middleware
2018-12-26 17:20:51,264 INFO 1980 [egg-security] use xssProtection middleware
2018-12-26 17:20:51,265 INFO 1980 [egg-security] use xframe middleware
2018-12-26 17:20:51,266 INFO 1980 [egg-security] use dta middleware
2018-12-26 17:20:51,266 INFO 1980 [egg-security] compose 7 middlewares into one security middleware
2018-12-26 17:20:51,266 INFO 1980 [egg:loader] Use middleware: securities
2018-12-26 17:20:51,266 INFO 1980 [egg:loader] Use middleware: i18n
2018-12-26 17:20:51,266 INFO 1980 [egg:loader] Use middleware: access
2018-12-26 17:20:51,267 INFO 1980 [egg:loader] Loaded middleware from ["/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-session/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-security/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-jsonp/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-onerror/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-i18n/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-schedule/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-multipart/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-logrotator/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-static/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-view/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-view-vue-ssr/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-alinode/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg/app/middleware","/root/.jenkins/workspace/lx2-solution-html-build/app/middleware"]
2018-12-26 17:20:51,271 INFO 1980 [egg:loader] Controller loaded: /root/.jenkins/workspace/lx2-solution-html-build/app/controller
2018-12-26 17:20:51,297 INFO 1980 [egg:core] dump config after load, 22ms
[2018-12-26 17:20:51.306] [cfork:master:1943] worker:1980 disconnect (exitedAfterDisconnect: true, state: disconnected, isDead: false, worker.disableRefork: true)
[2018-12-26 17:20:51.306] [cfork:master:1943] don't fork, because worker:1980 will be kill soon
2018-12-26 17:20:51,306 INFO 1943 [master] app_worker#3:1980 disconnect, suicide: true, state: disconnected, current workers: []
2018-12-26 17:20:51,308 INFO 1980 [egg:core:ready_stat] end ready task /root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-core/lib/egg.js:287:10, remain ["/root/.jenkins/workspace/lx2-solution-html-build/node_modules/egg-watcher/lib/init.js:15:14"]
2018-12-26 17:20:51,309 INFO 1980 [app_worker] receive signal SIGTERM, exiting with code:0
2018-12-26 17:20:55,154 INFO 1943 [master] send kill SIGTERM to agent worker, will exit with code:0 after 5000ms
2018-12-26 17:20:55,154 INFO 1943 [master] wait 5000ms
2018-12-26 17:20:55,155 INFO 1943 [master] kill agent worker with signal SIGTERM
[2018-12-26 17:20:55.166] [cfork:master:1943] worker:1980 exit (code: null, exitedAfterDisconnect: true, state: dead, isDead: true, isExpected: false, worker.disableRefork: true)
2018-12-26 17:21:00,174 INFO 1943 [master] close done, exiting with code:0
2018-12-26 17:21:00,175 INFO 1943 [master] exit with code:0
[2018-12-26 17:20:50.067] [cfork:master:1943] worker:1961 disconnect (exitedAfterDisconnect: false, state: disconnected, isDead: false, worker.disableRefork: false)
[2018-12-26 17:20:50.083] [cfork:master:1943] new worker:1980 fork (state: none)
去掉 --daemon 看看,应该是 jenkins 检测到主进程退出了。
话说,单元测试为啥用 egg-scripts ?不是应该写单测,然后用 egg-bin cov 么?
去掉 --daemon 看看,应该是 jenkins 检测到主进程退出了。
话说,单元测试为啥用 egg-scripts ?不是应该写单测,然后用 egg-bin cov 么?
没跑单测呢,是打算部署到测试环境访问而已,不加--daemon可以正常启动,可以jenkins任务会一直处于运行状态。

在命令中加了--daemon不应该会以守护进程运行吗,为什么还会被jenkins关闭掉,请问有什么方法可以解决?
守护进程是后台运行的,不然前台退出了就退出了。
守护进程是后台运行的,不然前台退出了就退出了。
现在的问题是如果在egg-scripts加了--daemon参数启动的话,在jenkins任务执行完的时候egg服务也会被一起停掉,如果不加--daemon参数的话,jenkins任务会一直处于运行中状态,但egg服务能正常访问。
因为他需要前台进程,不需要 daemon,和 docker 一样
因为他需要前台进程,不需要 daemon,和 docker 一样
现在有个需求,就想用jenkins来做项目的启动,请问有没有什么方法可以解决jenkins任务跑完,让egg服务还保留着。
你不是已经解决了吗
你不是已经解决了吗
没有呢,虽然在jenkins中配置egg-scripts不加--daemon参数启动,egg服务能访问,但jenkins任务会一直处于运行状态,不会结束,就没办法执行之后的其他jenkins任务了
你不是已经解决了吗


就像我们在终端打开一样,一直在监听状态
正常啊,Jenkins 怎么知道你测试完成了,你需要在合适的时机去 egg-scripts stop 掉。
没跑单测呢,是打算部署到测试环境访问而已
没搞明白你的测试是怎么做的,怎么会在 Jenkins 上去部署访问,难道你是人工测试?
没跑单测呢,是打算部署到测试环境访问而已
没搞明白你的测试是怎么做的,怎么会在 Jenkins 上去部署访问,难道你是人工测试?
是的,暂时就是人工测试,其实可以理解成就是跟生产环境的部署一样,只是配置了测试环境的参数,我想做到的效果就是想在jenkins上运行npm run start,跟终端一样,以守护进程的方式启动egg。但现在的结果就是jenkins任务结束后,以--daemon运行的egg服务也会被一起停掉。这让我很疑惑,为什么在终端上就正常。有没有什么解决方法?
--daemon 的话,egg-scripts 启动完 egg 后,把 egg 放在后台运行,然后 egg-scripts 自己退出,这时候 Jenkins 就判断进程退出了啊。Egg 只有两种模式,后面建议自己搞
- 既然是人工测试,肯定是需要『人为』告诉 Jenkins 我的任务结束了,否则它怎么知道要关掉 egg ?
- Jenkins 检测的是它启动的 process 是否还存活,
--daemon的话,egg-scripts 启动完 egg 后,把 egg 放在后台运行,然后 egg-scripts 自己退出,这时候 Jenkins 就判断进程退出了啊。
可能是我的表述有些不清晰,我们在终端运行npm run start命令时,输出是这样的:

这时候egg-scripts已经结束了,但egg服务还在,我们还能通过[域名]:7001进行访问。
但是,在jenkins上运行相同的命令,会把egg服务也停掉,已经无法通过[域名]:7001进行访问了
Egg 只有两种模式,后面建议自己搞
我看文档说的,不同的环境可以通过config.[环境名称].js来配置,然后在启动的时候通过设置EGG_SERVER_ENV=[环境名称]来加载指定的配置文件,请问这种做法是正确的吗?
Jenkins 检测的是它启动的 process 是否还存活,--daemon 的话,egg-scripts 启动完 egg 后,把 egg 放在后台运行,然后 egg-scripts 自己退出,这时候 Jenkins 就判断进程退出了啊。
我都说了。。。
你如果想在 Jenkins 上正确的启动 egg,就不要加 --daemon, 否则 Jenkins 它就肯定会结束掉测试。
但此时 Jenkins 会一直等待着这个进程结束,才可能继续执行下面的,你必须手动通知它:『我测试结束了,请关闭这个进程』
你如果想在 Jenkins 上正确的启动 egg,就不要加 --daemon, 否则 Jenkins 它就肯定会结束掉测试。
但此时 Jenkins 会一直等待着这个进程结束,才可能继续执行下面的,你必须手动通知它:『我测试结束了,请关闭这个进程』
好的,谢谢您耐心的回答。
你不是已经解决了吗
就像我们在终端打开一样,一直在监听状态
@xiaoxinlin
你好 我也遇到了这个问题,如果继续使用egg守护的话,有解决方案吗?
我知道更换pm2作为守护进程的话就可以解决,
@xiaoxinlin
一开始我以为是egg的守护进程问题。
其实是jenkins的问题,Jenkins任务结束时候自动关掉了所有的子进程。所以这时候应该要在环境变量里新增一个参数BUILD_ID=dontKillMe
可参考:https://blog.csdn.net/qq_25559693/article/details/72844340
@GZWZC 专业老哥,只有你直击要点。一波双击👏👏
@GZWZC 完美,在shell开头加上BUILD_ID=dontKillMe就可以了
同样的问题,感谢
@GZWZC
Most helpful comment
@xiaoxinlin
一开始我以为是egg的守护进程问题。
其实是jenkins的问题,Jenkins任务结束时候自动关掉了所有的子进程。所以这时候应该要在环境变量里新增一个参数BUILD_ID=dontKillMe
可参考:https://blog.csdn.net/qq_25559693/article/details/72844340