diff --git a/lib/roles/device.js b/lib/roles/device.js index ba0ca7e4..ad961d3e 100644 --- a/lib/roles/device.js +++ b/lib/roles/device.js @@ -35,6 +35,12 @@ module.exports = function(options) { // Show serial number in logs logger.setGlobalIdentifier(options.serial) + // Panic if necessary + Promise.onPossiblyUnhandledRejection(function(err, promise) { + log.fatal('Unhandled rejection', err.stack) + selfDestruct() + }) + // Adb var adb = Promise.promisifyAll(adbkit.createClient()) @@ -210,10 +216,14 @@ module.exports = function(options) { }) }) }) - .done(function() { + .then(function() { log.info('Ready for instructions') poke() }) + .catch(function(err) { + log.fatal('Setup failed', err.stack) + selfDestruct() + }) sub.on('message', function(channel, data) { var wrapper = wire.Envelope.decode(data)