UNPKG

mecano

Version:

Common functions for system deployment.

126 lines (121 loc) 3.12 kB
// Generated by CoffeeScript 1.11.1 var fs, mustache, path; module.exports = { ssh: null, handler: function(options) { if (!options.stream) { throw Error('Missing option: "stream"'); } if (!options.serializer) { throw Error('Missing option: "serializer"'); } if (options.end == null) { options.end = true; } return this.call(function() { var close; close = function() { return setTimeout(function() { if (options.end) { return options.stream.close(); } }, 100); }; this.on('text', function(log) { var data; if (!options.serializer.text) { return; } data = options.serializer.text(log); if (data != null) { return options.stream.write(data); } }); this.on('header', function(log) { var data; if (!options.serializer.header) { return; } data = options.serializer.header(log); if (data != null) { return options.stream.write(data); } }); this.on('stdin', function(log) { var data; if (!options.serializer.stdin) { return; } data = options.serializer.stdin(log); if (data != null) { return options.stream.write(data); } }); this.on('diff', function(log) { var data; if (!options.serializer.diff) { return; } data = options.serializer.diff(log); if (data != null) { return options.stream.write(data); } }); this.on('handled', function(log) { var data; if (!options.serializer.handled) { return; } data = options.serializer.handled(log); if (data != null) { return options.stream.write(data); } }); this.on('stdout_stream', function(log) { var data; if (!options.serializer.stdout_stream) { return; } data = options.serializer.stdout_stream(log); if (data != null) { return options.stream.write(data); } }); this.on('stderr', function(log) { var data; if (!options.serializer.stderr) { return; } data = options.serializer.stderr(log); if (data != null) { return options.stream.write(data); } }); this.on('end', function() { var data; if (!options.serializer.end) { return; } data = options.serializer.end(log); if (data != null) { options.stream.write(data); } return close(); }); return this.on('error', function(err) { var data; if (!options.serializer.error) { return; } data = options.serializer.error(log); if (data != null) { options.stream.write(data); } return close(); }); }); } }; fs = require('fs'); path = require('path'); mustache = require('mustache');