foreman exits directly
jonhue opened this issue · comments
Procfile.dev
web: bundle exec puma -C config/puma.rb
worker: bundle exec sidekiq
webpacker: ruby ./bin/webpack-dev-server
Terminal:
$ foreman start -f Procfile.dev
17:25:54 web.1 | started with pid 192464
17:25:54 worker.1 | started with pid 157972
17:25:54 webpacker.1 | started with pid 35016
17:25:56 webpacker.1 | exited with code 0
17:25:56 system | sending SIGKILL to all processes
17:25:56 system | sending SIGKILL to web.1 at pid 192464
17:25:56 system | sending SIGKILL to worker.1 at pid 157972
17:25:56 web.1 | exited with code 0
17:25:56 worker.1 | exited with code 0
Reason for the exit is the webpacker. Without it foreman starts just fine. But the command ran without foreman doesn't throw any errors.
$ ruby ./bin/webpack-dev-server
$ 10% building modules 3/3 modules 0 active
Project is running at http://localhost:3035/
webpack output is served from /packs/
Content not from webpack is served from c:\Users\Jonas\apps\slooob\slooob\public\packs
404s will fallback to /index.html Hash: 40cb4ad6e43aec0d1541
Version: webpack 3.5.5
Time: 39887ms
Asset Size Chunks Chunk Names
application-1a1aae5f973d47057402.js 7.33 MB 0 [emitted] [big] application
BjAYBlHtW3CJxDcjzrnZCL6up8jxqWt8HVA3mDhkV_0-e27a34a649143f0d916a87216849a3bf.woff2 5.61 kB [emitted]
BjAYBlHtW3CJxDcjzrnZCI4P5ICox8Kq3LLUNMylGO4-605cae9f48499b1c99ddc73e87a044e6.woff2 15.6 kB [emitted]
AIed271kqQlcIRSOnQH0yWhQUTDJGru-0vvUpABgH8I-eb1b1aacde3ce01c37bb433a84fd1ae7.woff2 6.12 kB [emitted]
AIed271kqQlcIRSOnQH0yejkDdvhIIFj_YMdgqpnSB0-9f66fc03bd6ee4275e0b9aac14c6af3f.woff2 18.7 kB [emitted]
AIed271kqQlcIRSOnQH0yYlIZu-HDpmDIZMigmsroc4-f4976aac9429b88cfa44ee9e1aa28608.woff2 18.4 kB [emitted]
BjAYBlHtW3CJxDcjzrnZCCYE0-AqJ3nfInTTiDXDjU4-ee2665fa17b40aaf30c28e50580e36fd.woff2 16.3 kB [emitted]
default-b2991c6f886c6389b9de.js 893 kB 1 [emitted] [big] default
dark-08e86bcde5d736a39ced.js 893 kB 2 [emitted] [big] dark
dark-dab12570d4f13ac26eefc40bd879cc7c.css 317 kB 2 [emitted] [big] dark
default-dab12570d4f13ac26eefc40bd879cc7c.css 317 kB 1 [emitted] [big] default
manifest.json 1.2 kB [emitted]
[45] (webpack)-dev-server/client?http://localhost:3035 5.83 kB {0} {1} {2} [built]
[46] ./node_modules/url/url.js 23.3 kB {0} {1} {2} [built]
[51] ./node_modules/strip-ansi/index.js 161 bytes {0} {1} {2} [built]
[53] ./node_modules/loglevel/lib/loglevel.js 6.74 kB {0} {1} {2} [built]
[54] (webpack)-dev-server/client/socket.js 856 bytes {0} {1} {2} [built]
[85] (webpack)-dev-server/client/overlay.js 3.6 kB {0} {1} {2} [built]
[222] multi (webpack)-dev-server/client?http://localhost:3035 ./app/webpack/packs/application.js 40 bytes {0} [built]
[223] ./app/webpack/packs/application.js 506 bytes {0} [built]
[356] multi (webpack)-dev-server/client?http://localhost:3035 ./app/webpack/packs/dark.sass 40 bytes {2} [built]
[357] ./app/webpack/packs/dark.sass 41 bytes {2} [built]
[358] multi (webpack)-dev-server/client?http://localhost:3035 ./app/webpack/packs/default.sass 40 bytes {1} [built]
[359] ./app/webpack/packs/default.sass 41 bytes {1} [built]
[360] ./node_modules/css-loader?{"minimize":false}!./node_modules/postcss-loader/lib?{"sourceMap":true,"config":{"path":"c://Users//Jonas//apps//slooob//slooob//.postcssrc.yml"}}!./node_modules/resolve-url-loader!./node_modules/sass-loader/lib/loader.js?{"sourceMap":true}!./app/webpack/packs/dark.sass 331 kB [built]
[368] ./node_modules/style-loader/lib/addStyles.js 8.7 kB [built]
[370] ./node_modules/css-loader?{"minimize":false}!./node_modules/postcss-loader/lib?{"sourceMap":true,"config":{"path":"c://Users//Jonas//apps//slooob//slooob//.postcssrc.yml"}}!./node_modules/resolve-url-loader!./node_modules/sass-loader/lib/loader.js?{"sourceMap":true}!./app/webpack/packs/default.sass 331 kB [built]
+ 356 hidden modules
Child extract-text-webpack-plugin node_modules/extract-text-webpack-plugin/dist node_modules/css-loader/index.js??ref--4-2!node_modules/postcss-loader/lib/index.js??ref--4-3!node_modules/resolve-url-loader/index.js!node_modules/sass-loader/lib/loader.js??ref--4-5!app/webpack/packs/dark.sass:
Asset Size Chunks Chunk Names
BjAYBlHtW3CJxDcjzrnZCL6up8jxqWt8HVA3mDhkV_0-e27a34a649143f0d916a87216849a3bf.woff2 5.61 kB
BjAYBlHtW3CJxDcjzrnZCCYE0-AqJ3nfInTTiDXDjU4-ee2665fa17b40aaf30c28e50580e36fd.woff2 16.3 kB
BjAYBlHtW3CJxDcjzrnZCI4P5ICox8Kq3LLUNMylGO4-605cae9f48499b1c99ddc73e87a044e6.woff2 15.6 kB
AIed271kqQlcIRSOnQH0yWhQUTDJGru-0vvUpABgH8I-eb1b1aacde3ce01c37bb433a84fd1ae7.woff2 6.12 kB
AIed271kqQlcIRSOnQH0yejkDdvhIIFj_YMdgqpnSB0-9f66fc03bd6ee4275e0b9aac14c6af3f.woff2 18.7 kB
AIed271kqQlcIRSOnQH0yYlIZu-HDpmDIZMigmsroc4-f4976aac9429b88cfa44ee9e1aa28608.woff2 18.4 kB
[0] ./node_modules/css-loader?{"minimize":false}!./node_modules/postcss-loader/lib?{"sourceMap":true,"config":{"path":"c://Users//Jonas//apps//slooob//slooob//.postcssrc.yml"}}!./node_modules/resolve-url-loader!./node_modules/sass-loader/lib/loader.js?{"sourceMap":true}!./app/webpack/packs/dark.sass 331 kB {0} [built]
[1] ./node_modules/css-loader/lib/css-base.js 2.26 kB {0} [built]
[2] ./app/webpack/fonts/inconsolata/BjAYBlHtW3CJxDcjzrnZCL6up8jxqWt8HVA3mDhkV_0.woff2 130 bytes {0} [built]
[3] ./app/webpack/fonts/inconsolata/BjAYBlHtW3CJxDcjzrnZCCYE0-AqJ3nfInTTiDXDjU4.woff2 130 bytes {0} [built]
[4] ./app/webpack/fonts/inconsolata/BjAYBlHtW3CJxDcjzrnZCI4P5ICox8Kq3LLUNMylGO4.woff2 130 bytes {0} [built]
[5] ./app/webpack/fonts/inconsolata/AIed271kqQlcIRSOnQH0yWhQUTDJGru-0vvUpABgH8I.woff2 130 bytes {0} [built]
[6] ./app/webpack/fonts/inconsolata/AIed271kqQlcIRSOnQH0yejkDdvhIIFj_YMdgqpnSB0.woff2 130 bytes {0} [built]
[7] ./app/webpack/fonts/inconsolata/AIed271kqQlcIRSOnQH0yYlIZu-HDpmDIZMigmsroc4.woff2 130 bytes {0} [built]
Child extract-text-webpack-plugin node_modules/extract-text-webpack-plugin/dist node_modules/css-loader/index.js??ref--4-2!node_modules/postcss-loader/lib/index.js??ref--4-3!node_modules/resolve-url-loader/index.js!node_modules/sass-loader/lib/loader.js??ref--4-5!app/webpack/packs/default.sass:
Asset Size Chunks Chunk Names
BjAYBlHtW3CJxDcjzrnZCL6up8jxqWt8HVA3mDhkV_0-e27a34a649143f0d916a87216849a3bf.woff2 5.61 kB
BjAYBlHtW3CJxDcjzrnZCCYE0-AqJ3nfInTTiDXDjU4-ee2665fa17b40aaf30c28e50580e36fd.woff2 16.3 kB
BjAYBlHtW3CJxDcjzrnZCI4P5ICox8Kq3LLUNMylGO4-605cae9f48499b1c99ddc73e87a044e6.woff2 15.6 kB
AIed271kqQlcIRSOnQH0yWhQUTDJGru-0vvUpABgH8I-eb1b1aacde3ce01c37bb433a84fd1ae7.woff2 6.12 kB
AIed271kqQlcIRSOnQH0yejkDdvhIIFj_YMdgqpnSB0-9f66fc03bd6ee4275e0b9aac14c6af3f.woff2 18.7 kB
AIed271kqQlcIRSOnQH0yYlIZu-HDpmDIZMigmsroc4-f4976aac9429b88cfa44ee9e1aa28608.woff2 18.4 kB
[0] ./node_modules/css-loader?{"minimize":false}!./node_modules/postcss-loader/lib?{"sourceMap":true,"config":{"path":"c://Users//Jonas//apps//slooob//slooob//.postcssrc.yml"}}!./node_modules/resolve-url-loader!./node_modules/sass-loader/lib/loader.js?{"sourceMap":true}!./app/webpack/packs/default.sass 331 kB {0} [built]
[1] ./node_modules/css-loader/lib/css-base.js 2.26 kB {0} [built]
[2] ./app/webpack/fonts/inconsolata/BjAYBlHtW3CJxDcjzrnZCL6up8jxqWt8HVA3mDhkV_0.woff2 130 bytes {0} [built]
[3] ./app/webpack/fonts/inconsolata/BjAYBlHtW3CJxDcjzrnZCCYE0-AqJ3nfInTTiDXDjU4.woff2 130 bytes {0} [built]
[4] ./app/webpack/fonts/inconsolata/BjAYBlHtW3CJxDcjzrnZCI4P5ICox8Kq3LLUNMylGO4.woff2 130 bytes {0} [built]
[5] ./app/webpack/fonts/inconsolata/AIed271kqQlcIRSOnQH0yWhQUTDJGru-0vvUpABgH8I.woff2 130 bytes {0} [built]
[6] ./app/webpack/fonts/inconsolata/AIed271kqQlcIRSOnQH0yejkDdvhIIFj_YMdgqpnSB0.woff2 130 bytes {0} [built]
[7] ./app/webpack/fonts/inconsolata/AIed271kqQlcIRSOnQH0yYlIZu-HDpmDIZMigmsroc4.woff2 130 bytes {0} [built]
webpack: Compiled successfully.
Does this problem occur, because the webpack-dev-server seems to run in a new command after starting?
@jonhue Foreman assumes all the processes are long-lived. If any of the processes exits, Foreman stops all processes. It looks like the webpacker command is exiting, correct? If so, that would cause Foreman to stop them all.
@replaid Is there any way to change this behavior? When the webpack-dev-server exits, it doesn't mean it was unsuccessfull.
It appears that this is a deliberate design decision and the maintainer is well aware of this behavior. You can specify which processes run with foreman start -m
, excluding the command that exits. The person who filed #681 had an interesting idea, which see.
@jonhue is this still an issue?
Nope