ddollar / foreman

Manage Procfile-based applications

Home Page:http://ddollar.github.com/foreman

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

foreman exits directly

jonhue opened this issue · comments

@ddollar

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?