strong-service-upstart
v1.1.3
Published
Generate an upstart job using the provided parameters.
Downloads
597
Maintainers
Keywords
Readme
strong-service-upstart
Generate an Upstart job using the provided parameters.
Install
npm install strong-service-upstart
Basic Usage
var fs = require('fs');
var upstart = require('strong-service-upstart');
// Generate Upstart job for my-app
upstart({name: 'my-app'}, function(err, job) {
fs.writeFile('/etc/init/my-app.conf', job, function(err) {
if (err) console.error(err);
});
});
// Also supports synchronous mode
fs.writeFileSync('/etc/init/my-app.conf', upstart({name: 'my-app'}));
Options
This module supports a subset of those used in the node-linux templates:
name
- name of service. In comments in v1.4 and syslog tagging in v0.6.name
is an alias forlabel
andservicesummary
.description
- multi-word description of service.description
is an alias forservicedescription
.author
- sets author field of Upstart job (defaults to current user)cwd
- working directory to run service from (defaults to/
)user
- user to run service as (defaults tonodbody
)group
- group to run service as (Upstart v1.4 only, defaults tonogroup
)execpath
- path to binary to executablescript
- arguments to execpath (such as a script)created
- timestamp used in generated job (defaults to current time)env
- environment variables to set in Upstart jobversion
- Upstart version to target:0.6
,1.4
(default)template
- override internal template
Upstart Versions
Upstart v1.4 added support for setuid and setgid, so the default template requires Upstart v1.4.
A job file compatible with older versions of Upstart can be generated by
specifying version: '0.6'
in the options (or by providing your own template).
Template Format
Templates use _.template from Lodash using
EJS style syntax: <%= option %>
.