Fixed crashes when converting volume data and syncing.

This commit is contained in:
Sean Li
2014-08-27 16:57:20 -07:00
parent bdf0949190
commit 2af8f51b2e
2 changed files with 18 additions and 9 deletions

View File

@@ -1,7 +1,7 @@
var watchers = {};
removeBindFolder = function (name, callback) {
exec(path.join(getBinDir(), 'boot2docker') + ' ssh "rm -rf /var/lib/docker/binds/' + name + '"', function(err, stdout) {
exec(path.join(getBinDir(), 'boot2docker') + ' ssh "sudo rm -rf /var/lib/docker/binds/' + name + '"', function(err, stdout) {
callback(err, stdout);
});
};
@@ -181,8 +181,15 @@ Meteor.methods({
var image = Images.findOne(appObj.imageId);
loadKiteVolumes(image.path, appObj.name);
var app = Apps.findOne(appId);
Meteor.call('runApp', app, function (err) {
if (err) { throw err; }
removeBindFolder(app.name, function (err) {
if (err) {
console.error(err);
}
Fiber(function () {
Meteor.call('runApp', app, function (err) {
if (err) { throw err; }
});
}).run();
});
}
},

View File

@@ -190,12 +190,14 @@ createTarFileSync = function (image) {
var convertVolumeObjToArray = function (obj) {
var result = [];
_.each(_.keys(obj), function (key) {
var volumeObj = {};
volumeObj.Path = key;
volumeObj.Value = obj[key];
result.push(volumeObj);
});
if (obj !== null && typeof obj === 'object') {
_.each(_.keys(obj), function (key) {
var volumeObj = {};
volumeObj.Path = key;
volumeObj.Value = obj[key];
result.push(volumeObj);
});
}
return result;
};