maru

0.0.1 • Public • Published

maru

System configuration management framework (WIP) written with node.

javascript config management

Installation

$ npm install -g maru

Provisioning

To provision from a script simply pass it to maru(1), by default ~/.maru.js is used.

$ maru examples/github

    install : visionmedia-mon
    install : visionmedia-every
    install : visionmedia-mad
    install : visionmedia-burl
    install : visionmedia-watch
   complete : visionmedia-mad - 1s
   complete : visionmedia-burl - 1s
   complete : visionmedia-watch - 1s
   complete : visionmedia-every - 1s
   complete : visionmedia-mon - 1s

Installing configurations from npm

Maru supports packages straight from npm, for example of you invoke use('curl'), this effectively a short-hand syntax for use(require('maru-curl')()), where maru-curl is published as:

module.exports = function(){
  return {
    name: 'curl',
    which: 'curl',
    install: function(env, fn){
      env.exec('apt-get install curl -y', fn);
    }
  }
};

In your config script:

use('curl')

NOTE: maru assumes that the maru- prefix is always used in the npm name. For a list of available packages visit the wiki Packages page.

Debugging

To enable debug output simply run with the DEBUG env variable set to "maru":

$ DEBUG=maru maru examples/apt

  maru jobs 3 +0ms
  maru use curl +3ms
  maru use git +0ms
  maru use make +0ms
  maru use gm +1ms
  maru use gs +0ms
  maru use ffmpeg +0ms
...

License

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i maru

Weekly Downloads

2

Version

0.0.1

License

none

Last publish

Collaborators

  • tjholowaychuk