diff --git a/lib/key.js b/lib/key.js index 933e23d6..11b88a33 100644 --- a/lib/key.js +++ b/lib/key.js @@ -3,9 +3,9 @@ var provision = require('./tessel/provision'), module.exports = function() { return new Promise(function(resolve, reject) { - provision.setupLocal(function(err, created) { - if (!created) { - reject(new Error('Key already exists. No new key created.')); + provision.setupLocal(function(err) { + if (err) { + reject(err); } else { resolve(); } diff --git a/lib/tessel/provision.js b/lib/tessel/provision.js index ca3e5fe6..e30eca8c 100644 --- a/lib/tessel/provision.js +++ b/lib/tessel/provision.js @@ -15,9 +15,14 @@ Tessel.prototype.provisionTessel = function() { var self = this; if (self.connection.connectionType === 'USB') { // Check if local .tessel file has keypair, if not, put it there - setupLocal(function() { - // Authorize Tessel for SSH - authTessel(self); + setupLocal(function(err) { + if (err) { + logs.err(err); + return; + } else { + // Authorize Tessel for SSH + authTessel(self); + } }); } else { logs.warn('Tessel must be connected with USB to use this command.'); @@ -75,7 +80,7 @@ function setupLocal(callback) { return; } else { if (typeof callback === 'function') { - callback(null, true); + callback(); } } }); @@ -83,7 +88,7 @@ function setupLocal(callback) { }); } else { if (typeof callback === 'function') { - callback(null, false); + callback(new Error('Keys already exist. Refusing to overwrite them.')); } } }