Skip to content

Instantly share code, notes, and snippets.

@Raynos
Created August 22, 2012 23:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Raynos/3430414 to your computer and use it in GitHub Desktop.
Save Raynos/3430414 to your computer and use it in GitHub Desktop.
#!/usr/bin/env node
var argv = require('fleet/lib/argv')
, EventEmitter = require("events").EventEmitter
, some = require("iterators").someSync
, ee = new EventEmitter()
if (!argv.hub) {
return console.error('Specify a --hub or set a remote.')
}
var propagit = require('propagit')
var git = require('fleet/lib/git')
var repoName = git.repoName()
var p = propagit(argv)
p.on('error', function (err) {
console.dir(err)
})
p.hub(function (hub) {
hub.ps(ee.emit.bind(ee))
ee.on("data", function (value, pids) {
var pid = some(pids, findSelf)
var opts = {
drone : argv.drone,
drones : argv.drones,
pid : pid
}
hub.stop(opts, function (err, drones) {
Object.keys(drones).forEach(function (id) {
console.log('[' + id + '] stopped ' + drones[id].join(' '));
})
p.hub.close()
})
})
})
function findSelf(value, key) {
if (value.repo === repoName) {
return key
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment