beet

Created: 2011-07-12 15:23
Updated: 2018-12-22 17:12
License: mit

README.md

build status An extension to the node.js supervisord library with some additional candy.

Features

  • Installs supervisord if it's not already installed.

    • Adds an optional upstart script to run supervisord at runtime
  • Ability to add processes to supervisord by group.

  • Reads supervisord.conf file for authentication / port.

  • Ability to load/unload any supervisord.conf file.

Notes

  • Beet modifies only one setting in supervisord.conf, which is [include]. Beet adds a directory to scan which is /etc/beet/enabled/*.conf. Any configuration files Are symlinked to this directory.
  • After modifications to supervisord, beet calls supervisorctl update to load / unload any changes, versus restarting supervisord.

Installation

npm install beet -g && beet --install

Examples

Easiest one is to add a program to the default scripts configuration. This is located in /etc/beet/available/scripts.conf, and is enabled in /etc/beet/enabled

var beet = require('beet');


beet.scripts.addProgram({ script: __dirname + '/script.js', name: 'my script' }, function(err, result)
{
	//started!
});                    

You can also specify commands:

beet.scripts.addProgram({ command: '/bin/mongod' }, function(err, result)
{
	//started!
})            

You can just as easily load any supervisord.conf:

   
var beet = require('beet'),
config = beet.configuration('/path/to/my/custom/supervisord.conf');          
                    
config.addProgram({ script: '/my/script.js' }, function()
{
	
});

config.enable();//enable

If you want to disable any configuration file:

   
require('beet').configuration('/path/to/config.conf').disable();
Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more