Removes duplicate apps and fixes apps duplicating during installs.

This commit is contained in:
Sean Li 2014-10-09 11:43:13 -07:00
parent 67d37878bf
commit 0071a7fcf5
3 changed files with 7 additions and 8 deletions

View File

@ -173,7 +173,12 @@ AppUtil.sync = function () {
} else { } else {
var apps = Apps.find({}).fetch(); var apps = Apps.find({}).fetch();
_.each(apps, function (app) { _.each(apps, function (app) {
if (app.docker && app.docker.Id) { var app = Apps.findOne(app._id);
if (app && app.docker && app.docker.Id) {
var duplicateApps = Apps.find({'docker.Id': app.docker.Id, _id: {$ne: app._id}}).fetch();
_.each(duplicateApps, function (duplicateApp) {
Apps.remove(duplicateApp._id);
});
Docker.getContainerData(app.docker.Id, function (err, data) { Docker.getContainerData(app.docker.Id, function (err, data) {
var status = 'STARTING'; var status = 'STARTING';
if (data && data.State && data.State.Running) { if (data && data.State && data.State.Running) {

View File

@ -187,12 +187,6 @@ Docker.getImageData = function (imageId, callback) {
if (data.ContainerConfig && data.ContainerConfig.Volumes) { if (data.ContainerConfig && data.ContainerConfig.Volumes) {
data.ContainerConfig.Volumes = convertVolumeObjToArray(data.ContainerConfig.Volumes); data.ContainerConfig.Volumes = convertVolumeObjToArray(data.ContainerConfig.Volumes);
} }
/*console.log('Image ID');
console.log(imageId);
console.log('Raw Docker Data:');
console.log(dockerImage);
console.log('Inspected Data:');
console.log(data);*/
if (!dockerImage) { if (!dockerImage) {
callback(null, data); callback(null, data);
} else { } else {

View File

@ -13,7 +13,7 @@ Router.configure({
SetupController = RouteController.extend({ SetupController = RouteController.extend({
layoutTemplate: 'setup_layout', layoutTemplate: 'setup_layout',
waitOn: function () { waitOn: function () {
return [Meteor.subscribe('installs'), Meteor.subscribe('settings')]; return [Meteor.subscribe('apps'), Meteor.subscribe('images'), Meteor.subscribe('installs'), Meteor.subscribe('settings')];
} }
}); });