---
If you remember Ive wanted to implement a prototype of process-tree monitor (and therefore restore support for complex commands), but decided to start with specing current behavior and marking desired behavior as pending specs.
This pull-request is a first pass. Its mainly Foreman::Process specs and a bit of refactoring. Specs for Foreman::Engine will be coming next (theyll cover a wide ground of possible uses). Afterwards I will replace machinery a bit to remove pending specs and ensure the rest is still passing on all available to me platforms.
If you have any notices, Ill gladly hear them.
---
Fixes#2
This is my first patch for JRuby, so any feedback would be appreciated. The specs do not run (Ill file a separate issue) but I am able to successfully start up & run the contents of a `Procfile`.
I based this patch on [launchys JRuby support](https://github.com/copiousfreetime/launchy/pull/10) and I too confirmed these changes did not break 1.8.7, 1.9.2 or 1.9.3.
---
I just discovered the LiveReload gem, and wanted to use foreman to help me set up my development environments.
I didnt want to check in my custom development Procfiles, so I needed to alter the behaviour of:
> [The Procfiles] containing directory will be assumed to be the root directory of the application.
Ive set up some shared `Procfiles` for development, such as `Rails3Dev`, `Rails31Dev`, `JekyllDev`, etc.
Then I set up a bash alias for each of these Procfiles, such as:
```bash
alias rd31="foreman start -d . -f ~/dev/procfiles/Rails31Dev"
```
The only thing missing was the `-d` flag.
My `Rails31Dev` file looks like this:
```yaml
compass: compass watch --sass-dir app/assets/stylesheets --css-dir public/assets
livereload: livereload
passenger: passenger start
```
Thanks!
Conflicts:
lib/foreman/cli.rb