0.5.5 • Published 9 years ago

node-ansible v0.5.5

Weekly downloads
746
License
MIT
Repository
github
Last release
9 years ago

node-ansible Build Status

Programmatic interface in Node.js for executing Ansible ad-hoc commands and playbooks

Warning: this package is still under development. API might break between minors.

Installation

npm install node-ansible --save

NOTE: I think it goes without saying, but I'll mention it anyway - you MUST have ansible installed on the same machine on which your node process is going to run.

Crash Course

var Ansible = require('node-ansible');
var command = new Ansible.AdHoc().module('shell').hosts('local').args("echo 'hello'");
command.exec();

is equivalent to:

ansible local -m shell -a "echo 'hello'"
var playbook = new Ansible.Playbook().playbook('my-playbook');
playbook.exec();

is equivalent to:

ansible-playbook myplaybook.yml

Let's execute:

var promise = playbook.exec();
promise.then(function(successResult) {
  console.log(successResult.code); // Exit code of the executed command
  console.log(successResult.output) // Standard output/error of the executed command
}, function(error) {
  console.error(error);
})

We can also get the results of a command streamed in real time (from both playbooks and adhoc commands):

playbook.on('stdout', function(data) { console.log(data.toString()); });
playbook.on('stderr', function(data) { console.log(data.toString()); });
var promise = playbook.exec();

Full Documentation

Running tests:

npm test

License

MIT

0.5.5

9 years ago

0.5.4

9 years ago

0.5.3

9 years ago

0.5.2

10 years ago

0.5.1

10 years ago

0.5.0

10 years ago

0.4.0

10 years ago

0.3.0

10 years ago

0.2.1

11 years ago

0.2.0

11 years ago

0.1.0

11 years ago

0.0.1

11 years ago