Skip to content

tomafro/foreman

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Foreman

Procfile

alpha ./bin/alpha
bravo ./bin/bravo some args
charlie ./bin/charlie -n 5

Development mode

Running

Log files will be output to standard out, colorized to aid in visual separation.

$ foreman start
[01:27:08] [alpha] started with pid 4393
[01:27:08] [bravo] started with pid 4394
[01:27:08] [charlie] started with pid 4395
[01:27:08] [bravo] initializing...
[01:27:08] [bravo] complete

Using Screen

Launch the processes in a screen session in indivudal windows

$ foreman screen

Single Process Execution

$ foreman execute alpha

Exporting to Upstart

Export to upstart scripts

$ foreman export sampleapp

$ initctl list | grep sampleapp
sampleapp start/running
sampleapp-alpha (1) start/running, process 4204
sampleapp-bravo (1) start/running, process 4589
sampleapp-charlie (1) start/running, process 4597

Change process concurrency levels

$ foreman scale sampleapp alpha 4
sampleapp-alpha (2) start/running, process 4164
sampleapp-alpha (3) start/running, process 4166
sampleapp-alpha (4) start/running, process 4168

$ initctl list | grep sampleapp
sampleapp start/running
sampleapp-alpha (4) start/running, process 4168
sampleapp-alpha (3) start/running, process 4166
sampleapp-alpha (2) start/running, process 4164
sampleapp-alpha (1) start/running, process 4204
sampleapp-bravo (1) start/running, process 4589
sampleapp-charlie (1) start/running, process 4597

$ foreman scale sampleapp alpha 1
sampleapp-alpha stop/waiting
sampleapp-alpha stop/waiting
sampleapp-alpha stop/waiting

Good Upstart citizen

All Upstart commands work as expected

$ start sampleapp
$ stop sampleapp
$ restart sampleapp

Standardized Logging

/var/log/sampleapp/alpha.log
/var/log/sampleapp/bravo.log
/var/log/sampleapp/charlie.log

License

MIT

© 2010 David Dollar

About

Manage Procfile-based applications

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 99.8%
  • Shell 0.2%