strongloop/strong-pm — pull request #31 by rmg (2014-10-06 21:12:39+00:00)
Title: Proposal: replacement of config with env vars

Remove support for the strong-pm configuration file. The features
that were configurable from it are better configured using other
interfaces.

This PR proposes, by way of documentation, to add pmctl sub-commands
for controlling application environment variables and injecting files
into the application at deployment time.

Environment variable examples:
- List current environment:
- `slc pmctl env`
- Add/set single variable:
- `slc pmctl env PORT=4321`
- Add/set multiple variables:
- `slc pmctl env PORT=4321 WORKERS=4 NODE_ENV=staging`
- Unset single variable:
- `slc pmctl env PORT=`
- Unset multiple variables:
- `slc pmctl env PORT= WORKERS= NODE_ENV=`
- Corner case, set to empty string:
- `slc pmctl env PORT=''`

File injection examples:
- upload strongloop.json from current directory and inject it into the
application environment at deployment time.
- `slc pmctl inject-file strongloop.json`
- upload the file at `/path/to/global/default` and inject it into the
applicaiton environment at deployment time as `strongloop.json`
- `slc pmctl inject-file /path/to/global/default:strongloop.json`
- remove the strongloop.json file stored in strong-pm for deployments
- `slc pmctl inject-file strongloop.json:`
- remove the strongloop.json file from application environment if it
is found at deployment time.
- `slc pmctl inject-file :strongloop.json`