solenoid v0.7.0
solenoid
Jump start an application. solenoid
is a binary script that does the following:
- Start an app:
solenoid start -p PIDFILE -u USERNAME -a APP_NAME -v APP_VERSION
- Stop an app:
solenoid stop -p PIDFILE
- Restart an app:
solenoid restart -p PIDFILE
Solenoid Start logic
When solenoid
starts an application it performs the following operation:
- Creates the run direction
options.runDir
- Creates the
solenoid
user - Fetches the application snapshot to
RUN_DIR/snapshot.tgz
- Unpacks the snapshot to
RUN_DIR/snapshot/package
- Removes the packed snapshot at
RUN_DIR/snapshot.tgz
- Reads the
package.json
atRUN_DIR/snapshot/package/package.json
- Determines the
node
engine. Defaults tooptions.engines.node.default || 0.6.x
. - Reads the ENVVARS from
-e|--app-env
(if any). - Restricts the filesystem to the
solenoid
user - Gets the
uid
andgid
of thesolenoid
user - Starts the application using
aeternum
andforza
.
CLI Arguments
-u, --app-user Username of the owner of the application.
-a, --app-name Name of the application.
-v, --app-version Version of the application.
-e, --app-env Environment vars as serialized JSON.
-p, --pidfile Location of the pidfile on disk of the aeternum process.
Configuration
solenoid
expects a configuration file $HOME/.solenoidconf
with the following options:
{
"storage": {
//
// Valid pkgcloud storage provider configuration
//
"provider": "rackspace",
"username": "rackspace-username",
"apiKey": "rackspace-apiKey",
"container": "rackspace-container",
"region": "ord"
},
"instruments": [
//
// Instruments provider to send metrics and events to.
//
{
"host": "127.0.0.1",
"port": 8556
}
],
//
// Directory to run applications within.
//
"runDir": "/opt/run"
"engines": {
"node": {
"default": "0.6.x",
"path": "/opt/engines/node"
}
}
}
LICENSE: MIT
Authors: Jarrett Cruger, Charlie Robbins
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago
11 years ago