diff --git a/client/htmls/public/instanceLog.html b/client/htmls/public/instanceLog.html
index ea4bbd0c1..e11ec4385 100644
--- a/client/htmls/public/instanceLog.html
+++ b/client/htmls/public/instanceLog.html
@@ -229,7 +229,7 @@
if(managnedData[i].platformId) {
instanceId = managnedData[i].platformId;
} else {
- instanceId = managnedData[i].instanceId;
+ instanceId = managnedData[i].blueprintName;
}
var $tr = $('
').attr('data-id', instanceId);
var createdOn = new Date(managnedData[i].createdOn).toLocaleString();
diff --git a/client/htmls/public/orchestrationLog.html b/client/htmls/public/orchestrationLog.html
index e1311cb62..dd097bbac 100644
--- a/client/htmls/public/orchestrationLog.html
+++ b/client/htmls/public/orchestrationLog.html
@@ -184,7 +184,7 @@
//Showing the log for Tasks
function pollLogs(timestamp, delay, clearData) {
var url = '/audit-trail/task-action/' + taskActionId+'/logs';
- url = url + '?timestamp=' + timestamp;
+ url = url + '?timestamp='+timestamp;
timeout = setTimeout(function() {
$.ajax({
url: url,
@@ -195,25 +195,25 @@
$modalBody.empty();
}
var $table = $('
');
- for (var i = 0; i < data.logs.length; i++) {
+ for (var i = 0; i < data.length; i++) {
var $rowDiv = $('
');
var timeString;
- if(data.logs[i].timestamp){
- timeString = new Date().setTime(data.logs[i].timestamp);
+ if(data[i].timestamp){
+ timeString = new Date().setTime(data[i].timestamp);
}
var date = new Date(timeString).toLocaleString();
var logStr ="";
- if(data.logs[i].log){
- logStr = data.logs[i].log;
+ if(data[i].log){
+ logStr = data[i].log;
}
- if (data.logs[i].err) {
+ if (data[i].err) {
$rowDiv.append($(' | ').append('' + date + '' + ' ' + '' + logStr + ''));
} else {
$rowDiv.append($(' | ').append('' + date + '' + ' ' + '' + logStr + ''));
}
$table.append($rowDiv);
- lastTimestamp = data.logs[i].timestamp;
- if (data.logs[i]) {
+ lastTimestamp = data[i].timestamp;
+ if (data[i]) {
$modalBody.append($table);
$modalBody.scrollTop($modalBody[0].scrollHeight + 100);
}
diff --git a/server/app/cronjobs/docker-container-sync/DockerContainerSync.js b/server/app/cronjobs/docker-container-sync/DockerContainerSync.js
index e94ab333f..91ab044c1 100644
--- a/server/app/cronjobs/docker-container-sync/DockerContainerSync.js
+++ b/server/app/cronjobs/docker-container-sync/DockerContainerSync.js
@@ -16,101 +16,43 @@ DockerContainerSync.execute = dockerContainerSync;
module.exports = DockerContainerSync;
-function dockerContainerSync(){
- async.parallel({
- containerDataSync: function(callback){
- containerDao.getAllContainers(function(err,containers){
- if(err){
- logger.error(err);
- callback(err,null);
- return;
- }else if(containers.length > 0){
- var count = 0;
- for(var i = 0;i < containers.length; i++){
- (function(container){
- instancesDao.getInstanceById(container.instanceId,function(err,instances){
- count++;
- if(err) {
- logger.error(err);
- return;
- }else if(instances.length > 0){
- if(count === containers.length){
- callback(null,containers);
- return;
- }
- }else{
- containerDao.deleteContainerByInstanceId(container.instanceId,function(err,deleteStatus){
- if(err){
- logger.error(err);
- return;
- }
- if(count === containers.length){
- callback(null,containers);
- return;
- }
- })
- }
- })
- })(containers[i]);
- }
- }else{
- logger.info("Containers are not present in catalyst for instance sync");
- callback(null,containers);
- return;
- }
- })
- },
- instanceDataSync: function(callback){
- MasterUtils.getAllActiveOrg(function(err, orgs) {
- if(err) {
- logger.error(err);
- callback(err,null);
- return;
- }else if(orgs.length > 0){
- for(var i = 0; i < orgs.length; i++){
- (function(org){
- instancesDao.getInstancesWithContainersByOrgId(org.rowid, function(err, instances) {
- if(err) {
- logger.error(err);
- callback(err,null);
- return;
- }else if(instances.length > 0){
- var count = 0;
- for(var j = 0; j < instances.length; j++){
- (function(instance){
- count++;
- aggregateDockerContainerForInstance(instance)
- })(instances[j]);
- }
- if(count === instances.length){
- callback(null,instances);
- return;
- }
- }else{
- logger.info("There is no Instance in "+org.orgname+" Organization who have docker installed");
- callback(null,instances);
- return;
- }
- });
-
- })(orgs[i]);
- }
-
- }else{
- logger.info("There is no Active Organization for Docker Container Sync");
- callback(null,orgs);
- return;
- }
- });
- }
- },function(err,results){
- if(err){
+function dockerContainerSync() {
+ MasterUtils.getAllActiveOrg(function (err, orgs) {
+ if (err) {
logger.error(err);
+ return;
+ } else if (orgs.length > 0) {
+ for (var i = 0; i < orgs.length; i++) {
+ (function (org) {
+ instancesDao.getInstancesWithContainersByOrgId(org.rowid, function (err, instances) {
+ if (err) {
+ logger.error(err);
+ return;
+ } else if (instances.length > 0) {
+ var count = 0;
+ for (var j = 0; j < instances.length; j++) {
+ (function (instance) {
+ count++;
+ aggregateDockerContainerForInstance(instance)
+ })(instances[j]);
+ }
+ if (count === instances.length) {
+ return;
+ }
+ } else {
+ logger.info("There is no Instance in " + org.orgname + " Organization who have docker installed");
+ return;
+ }
+ });
+ })(orgs[i]);
+ }
+ } else {
+ logger.info("There is no Active Organization for Docker Container Sync");
+ return;
}
- logger.info("Docker Container Sync job is successfully executed");
- return;
});
-}
+};
+
function aggregateDockerContainerForInstance(instance){
logger.info("Docker Container Sync started for Instance IP "+instance.instanceIP);
diff --git a/server/app/lib/utils/masterUtil.js b/server/app/lib/utils/masterUtil.js
index 0b4afa428..c8409ba65 100755
--- a/server/app/lib/utils/masterUtil.js
+++ b/server/app/lib/utils/masterUtil.js
@@ -876,169 +876,172 @@ var MasterUtil = function() {
// Return all settings for User.
this.getAllSettingsForUser = function(loggedInUser, callback) {
- var userid;
- var teams = [];
- var orgs = [];
- var projects = [];
- var bunits = [];
var returnObj = [];
var catObj = {};
- var orgObj = {};
- var loopCount = 0;
d4dModelNew.d4dModelMastersUsers.find({
- loginname: loggedInUser
- }, function(err, users) {
- if (users) {
- for (var x = 0; x < users.length; x++) {
- (function(usr) {
- if (users[usr].id === '7') {
- logger.debug("Got User");
- catObj = {
- userid: users[usr].rowid,
- teams: [],
- orgs: [],
- projects: [],
- bunits: []
- };
- logger.debug("User Id: ", users[usr].rowid);
- d4dModelNew.d4dModelMastersTeams.find({
- loginname_rowid: {
- $regex: users[usr].rowid
- },
- id: "21"
- }, function(err, team) {
- if (err) {
- callback(err, null);
- return;
- }
-
- logger.debug("Available team: ", JSON.stringify(team));
- if (typeof team === 'undefined' || team.length <= 0) {
- callback(null, returnObj);
- return;
- }
- if (team) {
- for (var tm = 0; tm < team.length; tm++) {
- if (team[tm].id === '21') {
- logger.debug("Inside team : ", team[tm].rowid);
- teams.push(team[tm].rowid);
-
- var orgTm = team[tm].orgname_rowid[0];
- if (!orgObj[orgTm]) {
- orgObj[orgTm] = true;
- }
- }
- }
- }
- logger.debug("Team array: ", JSON.stringify(teams));
- catObj.teams = teams;
- var allObj = Object.keys(orgObj);
- for (var tmOrg = 0; tmOrg < allObj.length; tmOrg++) {
- loopCount++;
- d4dModelNew.d4dModelMastersTeams.find({
- orgname_rowid: allObj[tmOrg],
- rowid: {
- $in: catObj.teams
- },
- id: "21"
- }, function(err, allTeams) {
- if (err) {
- callback(err, null);
- return;
- }
- for (var xy = 0; xy < allTeams.length; xy++) {
- (function(xy) {
- if (typeof allTeams[xy].orgname_rowid != "undefined" && typeof allTeams[xy].projectname_rowid != "undefined") {
+ loginname: loggedInUser,
+ id: '7'
+ }, function (err, users) {
+ if (err) {
+ callback(err, null);
+ return;
+ } else if (users.length > 0) {
+ for (var i = 0; i < users.length; i++) {
+ (function (user) {
+ catObj = {
+ userid: user.rowid,
+ teams: [],
+ orgs: [],
+ projects: [],
+ bunits: []
+ };
+ d4dModelNew.d4dModelMastersTeams.find({
+ loginname_rowid: {
+ $regex: user.rowid
+ },
+ id: "21"
+ }, function (err, teams) {
+ if (err) {
+ callback(err, null);
+ return;
+ } else if (teams.length > 0) {
+ var orgIdList = [],bgIdList=[],projectIdList=[];
+ for (var j = 0; j < teams.length; j++) {
+ (function (team) {
+ if (catObj.teams.indexOf(team.rowid) === -1) {
+ catObj.teams.push(team.rowid);
+ async.waterfall([
+ function(next){
d4dModelNew.d4dModelMastersOrg.find({
rowid: {
- $in: allTeams[xy].orgname_rowid
+ $in: team.orgname_rowid
},
id: "1",
active: true
- }, function(err, org) {
+ }, function (err, orgs) {
if (err) {
callback(err, null);
- }
- if (org) {
- logger.debug("Available Org: ", JSON.stringify(org));
- for (var x = 0; x < org.length; x++) {
- if (org[x].id === '1') {
- orgs.push(org[x].rowid);
- logger.debug("Orgs list rowid: ", org[x].rowid);
- }
- }
- catObj.orgs = orgs;
- }
- d4dModelNew.d4dModelMastersProjects.find({
- orgname_rowid: {
- $in: allTeams[xy].orgname_rowid
- },
- rowid: {
- $in: allTeams[xy].projectname_rowid.split(",")
- },
- id: "4"
- }, function(err, project) {
- if (err) {
- callback(err, null);
- }
- if (project) {
- logger.debug("Available project: ", JSON.stringify(project));
- for (var x1 = 0; x1 < project.length; x1++) {
- if (project[x1].id === '4') {
- projects.push(project[x1].rowid);
- logger.debug("projectList: ", project[x1].rowid);
+ return;
+ }else if (orgs.length > 0) {
+ var orgCount = 0;
+ for (var k = 0; k < orgs.length; k++) {
+ (function(org){
+ orgCount++;
+ if(orgIdList.indexOf(org.rowid) === -1){
+ orgIdList.push(org.rowid);
}
+ })(orgs[k]);
+ if(orgCount === orgs.length){
+ next(null,orgIdList);
+ return;
}
- catObj.projects = projects;
}
+ }else {
+ next(null, orgIdList);
+ return;
+ }
+ });
+ },
+ function(orgIds,next) {
+ catObj.orgs = orgIds;
+ async.parallel({
+ bgIds: function (callback) {
d4dModelNew.d4dModelMastersProductGroup.find({
orgname_rowid: {
- $in: allTeams[xy].orgname_rowid
+ $in: orgIds
},
id: "2"
- }, function(err, bg) {
+ }, function (err, bgs) {
if (err) {
callback(err, null);
- }
- if (bg) {
- for (var x2 = 0; x2 < bg.length; x2++) {
- if (bg[x2].id === '2') {
- bunits.push(bg[x2].rowid);
+ }else if (bgs.length > 0) {
+ var bgCount = 0;
+ for (var l = 0; l < bgs.length; l++) {
+ (function(bg){
+ bgCount++;
+ if(bgIdList.indexOf(bg.rowid) === -1){
+ bgIdList.push(bg.rowid);
+ }
+ })(bgs[l]);
+ if(bgCount === bgs.length){
+ callback(null,bgIdList);
+ return;
}
}
- catObj.bunits = bunits;
- returnObj.push(catObj);
- logger.debug("returnObj: ", returnObj);
- if (allObj.length === loopCount) {
- logger.debug("Condition matched:");
- callback(null, returnObj);
- return;
+ }else {
+ callback(null, bgIdList);
+ return;
+ }
+ });
+ },
+ projectIds: function (callback) {
+ d4dModelNew.d4dModelMastersProjects.find({
+ orgname_rowid: {
+ $in: orgIds
+ },
+ id: "4"
+ }, function (err, projects) {
+ if (err) {
+ callback(err, null);
+ }else if (projects.length > 0) {
+ var projectCount = 0;
+ for (var m = 0; m < projects.length; m++) {
+ (function(project){
+ projectCount++;
+ if(projectIdList.indexOf(project.rowid) === -1){
+ projectIdList.push(project.rowid);
+ }
+ })(projects[m]);
+ if(projectCount === projects.length){
+ callback(null,projectIdList);
+ return;
+ }
}
+ }else {
+ callback(null, projectIdList);
+ return;
}
});
+ }
- });
- // }
-
- });
- } //if
- })(xy);
+ },function(err,results){
+ if (err) {
+ next(err, null);
+ }
+ catObj.projects = results.projectIds;
+ catObj.bunits = results.bgIds;
+ next(null,catObj);
+ })
+ }],function (err, results) {
+ if (err) {
+ callback(err, null);
+ }
+ returnObj.push(catObj);
+ catObj = {};
+ if (returnObj.length === teams.length) {
+ callback(null, returnObj);
+ return;
+ }
+ })
}
- });
- } // for multiple orgs
-
- });
-
- }
- })(x);
+ })(teams[j]);
+ }
+ } else {
+ logger.debug("No Team in Catalyst")
+ callback(null, returnObj);
+ return;
+ }
+ });
+ })(users[i]);
}
+
} else {
- callback(err, returnObj);
+ logger.debug("No User in Catalyst")
+ callback(null, users);
return;
}
-
});
- }
+ };
// check valid user permission
this.checkPermission = function(username, callback) {
diff --git a/server/app/model/blueprint/blueprint.js b/server/app/model/blueprint/blueprint.js
index b2c3109e5..525ae1943 100755
--- a/server/app/model/blueprint/blueprint.js
+++ b/server/app/model/blueprint/blueprint.js
@@ -488,22 +488,28 @@ BlueprintSchema.statics.getBlueprintInfoById = function(id, callback) {
}
bluePrintInfo['imageName'] = imageName;
if (blueprint[0].blueprintConfig.cloudProviderData.cloudProviderType === 'azure') {
-
AzureProvider.getAzureCloudProviderById(blueprint[0].blueprintConfig.cloudProviderData.cloudProviderId, function(err, providerData) {
if (err) {
callback(err, null);
return;
}
- var jsonData = JSON.parse(providerData);
- bluePrintInfo['providerType'] = jsonData.providerType;
- bluePrintInfo['providerName'] = jsonData.providerName;
- bluePrintInfo['pemFileName'] = jsonData.pemFileName;
- bluePrintInfo['keyFileName'] = jsonData.keyFileName;
- bluePrintInfo['region'] = blueprint[0].blueprintConfig.cloudProviderData.region;
- bluePrintInfo['blueprintConfig'] = {
- cloudProviderData: blueprint[0].blueprintConfig.cloudProviderData
+ if(providerData !== 0) {
+ var jsonData = JSON.parse(providerData);
+ bluePrintInfo['providerType'] = jsonData.providerType;
+ bluePrintInfo['providerName'] = jsonData.providerName;
+ bluePrintInfo['pemFileName'] = jsonData.pemFileName;
+ bluePrintInfo['keyFileName'] = jsonData.keyFileName;
+ bluePrintInfo['region'] = blueprint[0].blueprintConfig.cloudProviderData.region;
+ bluePrintInfo['blueprintConfig'] = {
+ cloudProviderData: blueprint[0].blueprintConfig.cloudProviderData
+ }
+ callback(null, bluePrintInfo);
+ return;
+ }else{
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
}
- callback(null, bluePrintInfo);
})
} else if (blueprint[0].blueprintConfig.cloudProviderData.cloudProviderType === 'openstack') {
@@ -513,21 +519,28 @@ BlueprintSchema.statics.getBlueprintInfoById = function(id, callback) {
callback(err, null);
return;
}
- bluePrintInfo['providerType'] = providerData.providerType;
- bluePrintInfo['providerName'] = providerData.providerName;
- bluePrintInfo['blueprintConfig'] = {
- cloudProviderType: blueprint[0].blueprintConfig.cloudProviderData.cloudProviderType,
- cloudProviderId: blueprint[0].blueprintConfig.cloudProviderId,
- instanceImageID: blueprint[0].blueprintConfig.instanceImageID,
- flavor: blueprint[0].blueprintConfig.flavor,
- cloudProviderData: blueprint[0].blueprintConfig.cloudProviderData,
- infraManagerData: blueprint[0].blueprintConfig.infraManagerData,
- infraManagerId: blueprint[0].blueprintConfig.infraManagerId,
- instanceImageName: blueprint[0].blueprintConfig.instanceImageName,
- infraMangerType: blueprint[0].blueprintConfig.infraMangerType
+ if(providerData !== null) {
+ bluePrintInfo['providerType'] = providerData.providerType;
+ bluePrintInfo['providerName'] = providerData.providerName;
+ bluePrintInfo['blueprintConfig'] = {
+ cloudProviderType: blueprint[0].blueprintConfig.cloudProviderData.cloudProviderType,
+ cloudProviderId: blueprint[0].blueprintConfig.cloudProviderId,
+ instanceImageID: blueprint[0].blueprintConfig.instanceImageID,
+ flavor: blueprint[0].blueprintConfig.flavor,
+ cloudProviderData: blueprint[0].blueprintConfig.cloudProviderData,
+ infraManagerData: blueprint[0].blueprintConfig.infraManagerData,
+ infraManagerId: blueprint[0].blueprintConfig.infraManagerId,
+ instanceImageName: blueprint[0].blueprintConfig.instanceImageName,
+ infraMangerType: blueprint[0].blueprintConfig.infraMangerType
+ }
+ callback(null, bluePrintInfo);
+ return;
+ }else{
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
}
- callback(null, bluePrintInfo);
})
} else if (blueprint[0].blueprintConfig.cloudProviderData.cloudProviderType === 'vmware') {
@@ -537,19 +550,26 @@ BlueprintSchema.statics.getBlueprintInfoById = function(id, callback) {
callback(err, null);
return;
}
- bluePrintInfo['providerType'] = providerData.providerType;
- bluePrintInfo['providerName'] = providerData.providerName;
- bluePrintInfo['region'] = blueprint[0].blueprintConfig.cloudProviderData.region;
- bluePrintInfo['blueprintConfig'] = {
- cloudProviderType: blueprint[0].blueprintConfig.cloudProviderData.cloudProviderType,
- cloudProviderId: blueprint[0].blueprintConfig.cloudProviderId,
- cloudProviderData: blueprint[0].blueprintConfig.cloudProviderData,
- infraManagerData: blueprint[0].blueprintConfig.infraManagerData,
- infraManagerId: blueprint[0].blueprintConfig.infraManagerId,
- instanceImageName: blueprint[0].blueprintConfig.instanceImageName,
- infraMangerType: blueprint[0].blueprintConfig.infraMangerType
+ if(providerData !== null) {
+ bluePrintInfo['providerType'] = providerData.providerType;
+ bluePrintInfo['providerName'] = providerData.providerName;
+ bluePrintInfo['region'] = blueprint[0].blueprintConfig.cloudProviderData.region;
+ bluePrintInfo['blueprintConfig'] = {
+ cloudProviderType: blueprint[0].blueprintConfig.cloudProviderData.cloudProviderType,
+ cloudProviderId: blueprint[0].blueprintConfig.cloudProviderId,
+ cloudProviderData: blueprint[0].blueprintConfig.cloudProviderData,
+ infraManagerData: blueprint[0].blueprintConfig.infraManagerData,
+ infraManagerId: blueprint[0].blueprintConfig.infraManagerId,
+ instanceImageName: blueprint[0].blueprintConfig.instanceImageName,
+ infraMangerType: blueprint[0].blueprintConfig.infraMangerType
+ }
+ callback(null, bluePrintInfo);
+ return;
+ }else{
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
}
- callback(null, bluePrintInfo);
})
} else {
@@ -558,17 +578,27 @@ BlueprintSchema.statics.getBlueprintInfoById = function(id, callback) {
callback(err, null);
return;
}
- bluePrintInfo['keyPairName'] = keyPairData.keyPairName;
- bluePrintInfo['region'] = keyPairData.region;
+ if(keyPairData !== null) {
+ bluePrintInfo['keyPairName'] = keyPairData.keyPairName;
+ bluePrintInfo['region'] = keyPairData.region;
+ }
AWSProvider.getAWSProviderById(blueprint[0].blueprintConfig.cloudProviderId, function(err, providerData) {
if (err) {
callback(err, null);
return;
}
- bluePrintInfo['providerType'] = providerData.providerType;
- bluePrintInfo['providerName'] = providerData.providerName;
- bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
- callback(null, bluePrintInfo);
+ if(providerData !== null) {
+ bluePrintInfo['providerType'] = providerData.providerType;
+ bluePrintInfo['providerName'] = providerData.providerName;
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
+ }else{
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
+ }
+
})
})
}
@@ -578,6 +608,7 @@ BlueprintSchema.statics.getBlueprintInfoById = function(id, callback) {
} else if (bluePrintInfo.templateType === 'docker') {
bluePrintInfo['blueprintConfig'] = { dockerCompose: blueprint[0].blueprintConfig.dockerCompose };
callback(null, bluePrintInfo);
+ return;
} else if (bluePrintInfo.templateType === 'cft') {
if (blueprint[0].blueprintType === 'aws_cf') {
AWSProvider.getAWSProviderById(blueprint[0].blueprintConfig.cloudProviderId, function(err, providerData) {
@@ -585,14 +616,22 @@ BlueprintSchema.statics.getBlueprintInfoById = function(id, callback) {
callback(err, null);
return;
}
- bluePrintInfo['providerType'] = providerData.providerType;
- bluePrintInfo['providerName'] = providerData.providerName;
- bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
- callback(null, bluePrintInfo);
+ if(providerData !== null) {
+ bluePrintInfo['providerType'] = providerData.providerType;
+ bluePrintInfo['providerName'] = providerData.providerName;
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
+ }else{
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
+ }
})
} else {
bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
callback(null, bluePrintInfo);
+ return;
}
} else if (bluePrintInfo.templateType === 'arm') {
AzureProvider.getAzureCloudProviderById(blueprint[0].blueprintConfig.cloudProviderId, function(err, providerData) {
@@ -600,17 +639,25 @@ BlueprintSchema.statics.getBlueprintInfoById = function(id, callback) {
callback(err, null);
return;
}
- var jsonData = JSON.parse(providerData);
- bluePrintInfo['providerType'] = jsonData.providerType;
- bluePrintInfo['providerName'] = jsonData.providerName;
- bluePrintInfo['pemFileName'] = jsonData.pemFileName;
- bluePrintInfo['keyFileName'] = jsonData.keyFileName;
- bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
- callback(null, bluePrintInfo);
+ if(providerData !== null) {
+ var jsonData = JSON.parse(providerData);
+ bluePrintInfo['providerType'] = jsonData.providerType;
+ bluePrintInfo['providerName'] = jsonData.providerName;
+ bluePrintInfo['pemFileName'] = jsonData.pemFileName;
+ bluePrintInfo['keyFileName'] = jsonData.keyFileName;
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
+ }else{
+ bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
+ callback(null, bluePrintInfo);
+ return;
+ }
})
} else {
bluePrintInfo['blueprintConfig'] = blueprint[0].blueprintConfig;
callback(null, bluePrintInfo);
+ return;
}
}
})
diff --git a/server/app/model/classes/instance/instance.js b/server/app/model/classes/instance/instance.js
index 98dc77278..444b42d42 100755
--- a/server/app/model/classes/instance/instance.js
+++ b/server/app/model/classes/instance/instance.js
@@ -1379,8 +1379,6 @@ var InstancesDao = function() {
});
};
-
-
//action logs
function insertActionLog(instanceId, logData, callback) {
var actionLog = new ActionLog(logData);
@@ -1585,6 +1583,24 @@ var InstancesDao = function() {
return log;
};
+ this.insertBootstrapActionLogForChef = function(instanceId, runlist, user, timestampStarted, callback) {
+ logger.debug("Enter insertBootstrapActionLogForChef ", instanceId, runlist, user, timestampStarted);
+ var log = {
+ type: ACTION_LOG_TYPES.BOOTSTRAP.type,
+ name: ACTION_LOG_TYPES.BOOTSTRAP.name,
+ completed: true,
+ success: true,
+ user: user,
+ timeStarted: timestampStarted,
+ actionData: {
+ runlist: runlist
+ }
+ };
+ var logId = insertActionLog(instanceId, log, callback);
+ log._id = logId;
+ return log;
+ };
+
this.insertOrchestrationActionLog = function(instanceId, runlist, user, timestampStarted, callback) {
logger.debug("Enter insertOrchestrationActionLog ", instanceId, runlist, user, timestampStarted);
var log = {
diff --git a/server/app/model/classes/tasks/tasks.js b/server/app/model/classes/tasks/tasks.js
index 55198fa8d..7f57825b2 100755
--- a/server/app/model/classes/tasks/tasks.js
+++ b/server/app/model/classes/tasks/tasks.js
@@ -468,7 +468,8 @@ taskSchema.statics.createNew = function(taskData, callback) {
taskType: TASK_TYPE.SCRIPT_TASK,
nodeIds: taskData.nodeIds,
scriptTypeName: taskData.scriptTypeName,
- scriptDetails: taskData.scriptDetails
+ scriptDetails: taskData.scriptDetails,
+ isSudo: taskData.isSudo
});
} else {
callback({
diff --git a/server/app/routes/v1.0/routes_audit_trails.js b/server/app/routes/v1.0/routes_audit_trails.js
index 2e60c3f09..c3402290d 100644
--- a/server/app/routes/v1.0/routes_audit_trails.js
+++ b/server/app/routes/v1.0/routes_audit_trails.js
@@ -145,12 +145,10 @@ module.exports.setRoutes = function(app, sessionVerificationFunc) {
if (timestamp) {
timestamp = parseInt(timestamp);
}
-
async.waterfall(
[
-
function(next) {
- instanceLogModel.pollInstanceActionLog(req.params.actionId, timestamp, next);
+ logsDao.getLogsByReferenceId(req.params.actionId, timestamp, next);
}
],
function(err, results) {
diff --git a/server/app/routes/v1.0/routes_chef.js b/server/app/routes/v1.0/routes_chef.js
index 3234ff2c0..9b89407e2 100755
--- a/server/app/routes/v1.0/routes_chef.js
+++ b/server/app/routes/v1.0/routes_chef.js
@@ -337,17 +337,17 @@ module.exports.setRoutes = function(app, verificationFunc) {
callback(err, null);
return;
}
+ instance.id = data._id;
+ instance._id = data._id;
+ var timestampStarted = new Date().getTime();
+ var actionLog = instancesDao.insertBootstrapActionLogForChef(instance.id, [], req.session.user.cn, timestampStarted);
+ var logsReferenceIds = [instance.id, actionLog._id];
logsDao.insertLog({
- referenceId: data._id,
+ referenceId: logsReferenceIds,
err: false,
log: "Node Imported",
- timestamp: new Date().getTime()
+ timestamp: timestampStarted
});
- var instance = data;
- instance.id = data._id;
- instance._id = data._id;
- var timestampStarted = new Date().getTime();
- var actionLog = instancesDao.insertBootstrapActionLog(instance.id, [], req.session.user.cn, timestampStarted);
var instanceLog = {
actionId: actionLog._id,
instanceId: instance.id,
@@ -357,6 +357,7 @@ module.exports.setRoutes = function(app, verificationFunc) {
envName: envName,
status: "running",
bootStrap: "success",
+ actionStatus: "success",
platformId: platformId,
blueprintName: node.name,
data: runlist,
diff --git a/server/app/routes/v1.0/routes_providercommon.js b/server/app/routes/v1.0/routes_providercommon.js
index 754c7c5b7..8b477c029 100644
--- a/server/app/routes/v1.0/routes_providercommon.js
+++ b/server/app/routes/v1.0/routes_providercommon.js
@@ -86,8 +86,7 @@ module.exports.setRoutes = function(app, sessionVerificationFunc) {
function getManagedInstancesList(req, res, next) {
var reqObj = {};
- async.waterfall(
- [
+ async.waterfall([
function(next) {
apiUtil.changeRequestForJqueryPagination(req.query, next);
},
@@ -97,7 +96,7 @@ module.exports.setRoutes = function(app, sessionVerificationFunc) {
},
function(paginationReq, next) {
paginationReq['providerId'] = req.params.providerId;
- paginationReq['searchColumns'] = ['instanceIP', 'instanceState'];
+ paginationReq['searchColumns'] = ['instanceIP', 'instanceState','platformId','hardware.os','projectName','environmentName'];
apiUtil.databaseUtil(paginationReq, next);
},
function(queryObj, next) {
@@ -127,7 +126,7 @@ module.exports.setRoutes = function(app, sessionVerificationFunc) {
},
function(paginationReq, next) {
paginationReq['providerId'] = req.params.providerId;
- paginationReq['searchColumns'] = ['instanceIP', 'instanceState'];
+ paginationReq['searchColumns'] = ['instanceIP', 'instanceState','platformId','hardware.os','projectName','environmentName'];
reqData = paginationReq;
apiUtil.databaseUtil(paginationReq, next);
},
@@ -159,7 +158,7 @@ module.exports.setRoutes = function(app, sessionVerificationFunc) {
},
function(paginationReq, next) {
paginationReq['providerId'] = req.params.providerId;
- paginationReq['searchColumns'] = ['ip', 'platformId'];
+ paginationReq['searchColumns'] = ['ip', 'platformId','os','state','projectName','environmentName','providerData.region'];
reqData = paginationReq;
apiUtil.databaseUtil(paginationReq, next);
},
@@ -194,7 +193,7 @@ module.exports.setRoutes = function(app, sessionVerificationFunc) {
},
function(paginationReq, next) {
paginationReq['providerId'] = req.params.providerId;
- paginationReq['searchColumns'] = ['ip', 'platformId'];
+ paginationReq['searchColumns'] = ['ip', 'platformId','os','state','projectName','environmentName','providerData.region'];
apiUtil.databaseUtil(paginationReq, next);
},
function(queryObj, next) {
@@ -1517,7 +1516,7 @@ module.exports.setRoutes = function(app, sessionVerificationFunc) {
},
function(paginationReq, next) {
paginationReq['providerId'] = req.params.providerId;
- paginationReq['searchColumns'] = ['ip', 'platformId'];
+ paginationReq['searchColumns'] = ['ip', 'platformId','os','state'];
reqData = paginationReq;
apiUtil.databaseUtil(paginationReq, next);
},
diff --git a/server/app/routes/v1.0/routes_resources.js b/server/app/routes/v1.0/routes_resources.js
index 42788aa9c..c174042ca 100644
--- a/server/app/routes/v1.0/routes_resources.js
+++ b/server/app/routes/v1.0/routes_resources.js
@@ -39,9 +39,9 @@ module.exports.setRoutes = function(app, sessionVerificationFunc) {
},
function(paginationReq, next) {
if(paginationReq.filterBy.resourceType === 'S3'){
- paginationReq['searchColumns'] = ['resourceDetails.bucketName'];
+ paginationReq['searchColumns'] = ['resourceDetails.bucketName','resourceDetails.bucketOwnerName'];
}else if(paginationReq.filterBy.resourceType === 'RDS') {
- paginationReq['searchColumns'] = ['resourceDetails.dbName','resourceDetails.dbEngine'];
+ paginationReq['searchColumns'] = ['resourceDetails.dbName','resourceDetails.dbEngine','resourceDetails.dbInstanceClass','resourceDetails.region'];
}
apiUtil.databaseUtil(paginationReq, next);
},