Merge pull request #295 from resin-io/fix/delete-device-resource-on-errors

Remove registered device resource in case of errors in quickstart
This commit is contained in:
Juan Cruz Viotti 2016-01-14 10:58:18 -04:00
commit 65bc22c02c
2 changed files with 10 additions and 0 deletions

View File

@ -226,6 +226,10 @@ limitations under the License.
var message;
message = 'Initializing a device requires administration permissions\ngiven that we need to access raw devices directly.\n';
return helpers.sudo(['os', 'initialize', temporalPath, '--type', application.device_type], message);
})["catch"](function(error) {
return resin.models.device.remove(device.uuid)["finally"](function() {
throw error;
});
});
});
}).then(function(device) {

View File

@ -299,6 +299,12 @@ exports.init =
'''
helpers.sudo([ 'os', 'initialize', temporalPath, '--type', application.device_type ], message)
# Make sure the device resource is removed if there is an
# error when configuring or initializing a device image
.catch (error) ->
resin.models.device.remove(device.uuid).finally ->
throw error
.then (device) ->
console.log('Done')
return device.uuid