Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Manage Procfile-based applications
Ruby HTML ApacheConf Shell

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
autotest
bin
example
export/upstart
lib
man
spec
.gitignore
README.rdoc
Rakefile
foreman.gemspec

README.rdoc

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

Copyright

© 2010 David Dollar

Something went wrong with that request. Please try again.