mirror of https://github.com/docker/docs.git
Fixed app state syncing bugs.
This commit is contained in:
parent
f69ddb1251
commit
61418d86a9
|
@ -6,12 +6,8 @@ var convert = new Convert();
|
||||||
|
|
||||||
AppUtil = {};
|
AppUtil = {};
|
||||||
|
|
||||||
AppUtil.create = function () {
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
AppUtil.run = function (app) {
|
AppUtil.run = function (app) {
|
||||||
var image = Images.findOne({'docker.Id': app.docker.Image});
|
var image = Images.findOne({_id: app.imageId});
|
||||||
// Delete old container if one already exists
|
// Delete old container if one already exists
|
||||||
Docker.removeContainer(app.name, function (err) {
|
Docker.removeContainer(app.name, function (err) {
|
||||||
if (err) { console.error(err); }
|
if (err) { console.error(err); }
|
||||||
|
@ -181,7 +177,6 @@ AppUtil.sync = function () {
|
||||||
_.each(apps, function (app) {
|
_.each(apps, function (app) {
|
||||||
if (app.docker && app.docker.Id) {
|
if (app.docker && app.docker.Id) {
|
||||||
Docker.getContainerData(app.docker.Id, function (err, data) {
|
Docker.getContainerData(app.docker.Id, function (err, data) {
|
||||||
console.log(data);
|
|
||||||
var status = 'STARTING';
|
var status = 'STARTING';
|
||||||
if (data.State.Running) {
|
if (data.State.Running) {
|
||||||
status = 'READY';
|
status = 'READY';
|
||||||
|
@ -198,7 +193,9 @@ AppUtil.sync = function () {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
var dockerIds = _.map(apps, function (app) {
|
var dockerIds = _.map(apps, function (app) {
|
||||||
|
if (app.docker && app.docker.Id) {
|
||||||
return app.docker.Id;
|
return app.docker.Id;
|
||||||
|
}
|
||||||
});
|
});
|
||||||
var containerIds = _.map(containers, function (container) {
|
var containerIds = _.map(containers, function (container) {
|
||||||
return container.Id;
|
return container.Id;
|
||||||
|
@ -206,7 +203,7 @@ AppUtil.sync = function () {
|
||||||
var diffApps = _.difference(dockerIds, containerIds);
|
var diffApps = _.difference(dockerIds, containerIds);
|
||||||
_.each(diffApps, function (appContainerId) {
|
_.each(diffApps, function (appContainerId) {
|
||||||
var app = Apps.findOne({'docker.Id': appContainerId});
|
var app = Apps.findOne({'docker.Id': appContainerId});
|
||||||
if (app) {
|
if (app && app.status !== 'STARTING') {
|
||||||
AppUtil.remove(app._id);
|
AppUtil.remove(app._id);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -215,6 +212,10 @@ AppUtil.sync = function () {
|
||||||
});
|
});
|
||||||
_.each(diffContainers, function (container) {
|
_.each(diffContainers, function (container) {
|
||||||
var appName = container.Name.substring(1);
|
var appName = container.Name.substring(1);
|
||||||
|
var startingApp = _.find(apps, function (app) {
|
||||||
|
return app.status === 'STARTING' && app.name === appName;
|
||||||
|
});
|
||||||
|
if (!startingApp) {
|
||||||
var appPath = path.join(Util.KITE_PATH, appName);
|
var appPath = path.join(Util.KITE_PATH, appName);
|
||||||
if (!fs.existsSync(appPath)) {
|
if (!fs.existsSync(appPath)) {
|
||||||
console.log('Created Kite ' + appName + ' directory.');
|
console.log('Created Kite ' + appName + ' directory.');
|
||||||
|
@ -247,6 +248,7 @@ AppUtil.sync = function () {
|
||||||
};
|
};
|
||||||
console.log(appObj);
|
console.log(appObj);
|
||||||
Apps.insert(appObj);
|
Apps.insert(appObj);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
Template.dashboard_apps.helpers({
|
Template.dashboard_apps.helpers({
|
||||||
apps: function () {
|
apps: function () {
|
||||||
return Apps.find({}, {sort: {createdAt: -1}});
|
return Apps.find({name: {$ne: 'kite-dns'}}, {sort: {createdAt: -1}});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue