Repository: airavata-php-gateway Updated Branches: refs/heads/develop d3ab41cfc -> f4c11b163
WIP Project: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/repo Commit: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/commit/f4c11b16 Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/f4c11b16 Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/f4c11b16 Branch: refs/heads/develop Commit: f4c11b1634f5c638934620b48f12db91634a45b9 Parents: d3ab41c Author: scnakandala <[email protected]> Authored: Tue May 23 14:13:37 2017 -0400 Committer: scnakandala <[email protected]> Committed: Tue May 23 14:13:37 2017 -0400 ---------------------------------------------------------------------- app/controllers/ExperimentController.php | 42 ++++++++++++++------ .../partials/experiment-queue-block.blade.php | 15 +++++-- 2 files changed, 41 insertions(+), 16 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/f4c11b16/app/controllers/ExperimentController.php ---------------------------------------------------------------------- diff --git a/app/controllers/ExperimentController.php b/app/controllers/ExperimentController.php index 24ef1e0..fbbbe7f 100755 --- a/app/controllers/ExperimentController.php +++ b/app/controllers/ExperimentController.php @@ -454,9 +454,9 @@ class ExperimentController extends BaseController public function getQueueView() { -// $appId = Session::get('exp_create_app_id'); + $appId = Session::get('exp_create_app_id'); $computeResourceId = Input::get("crId"); -// $appDeployments = Airavata::getAllApplicationDeployments(Session::get('authz-token'), Session::get("gateway_id")); + $appDeployments = Airavata::getAllApplicationDeployments(Session::get('authz-token'), Session::get("gateway_id")); $nodeCount = Config::get('pga_config.airavata')["node-count"]; $cpuCount = Config::get('pga_config.airavata')["total-cpu-count"]; @@ -464,31 +464,47 @@ class ExperimentController extends BaseController $cpusPerNode = 0; $queueName = Config::get('pga_config.airavata')["queue-name"]; - $queues = ExperimentUtilities::getQueueDatafromResourceId($computeResourceId); + $queueDefaults = array("queueName" => $queueName, + "nodeCount" => $nodeCount, + "cpuCount" => $cpuCount, + "wallTimeLimit" => $wallTimeLimit, + "cpusPerNode" => $cpusPerNode + ); + $queues = ExperimentUtilities::getQueueDatafromResourceId($computeResourceId); $userComputeResourcePreferences = URPUtilities::get_all_user_compute_resource_prefs(); $userHasComputeResourcePreference = array_key_exists($computeResourceId, $userComputeResourcePreferences); - if ($userHasComputeResourcePreference) { - $queueName = $userComputeResourcePreferences[$computeResourceId]->preferredBatchQueue; + $queueDefaults['queueName'] = $userComputeResourcePreferences[$computeResourceId]->preferredBatchQueue; }else{ foreach($queues as $aQueue){ if($aQueue->isDefaultQueue){ - $queueName = $aQueue->queueName; + $queueDefaults['queueName'] = $aQueue->queueName; break; } } } - $queueDefaults = array("queueName" => $queueName, - "nodeCount" => $nodeCount, - "cpuCount" => $cpuCount, - "wallTimeLimit" => $wallTimeLimit, - "cpusPerNode" => $cpusPerNode - ); + $correctAppDeployment = null; + foreach($appDeployments as $appDeployment){ + if($appDeployment->computeHostId == $computeResourceId && $appDeployment->appModuleId == $appId){ + $correctAppDeployment = $appDeployment; + break; + } + } + + $appDeploymentDefaults = array(); + if($correctAppDeployment != null){ + $appDeploymentDefaults['nodeCount'] = $correctAppDeployment->defaultNodeCount; + $appDeploymentDefaults['cpuCount'] = $correctAppDeployment->defaultCPUCount; + $appDeploymentDefaults['wallTimeLimit'] = $wallTimeLimit; + $appDeploymentDefaults['queueName'] = $correctAppDeployment->defaultQueueName; + } - return View::make("partials/experiment-queue-block", array("queues" => $queues, "queueDefaults" => $queueDefaults, + return View::make("partials/experiment-queue-block", array("queues" => $queues, + "queueDefaults" => $queueDefaults, + "appDeploymentDefaults" => $appDeploymentDefaults, "useUserCRPref" => $userHasComputeResourcePreference, "userHasComputeResourcePreference" => $userHasComputeResourcePreference, "cpusPerNode" => $cpusPerNode)); http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/f4c11b16/app/views/partials/experiment-queue-block.blade.php ---------------------------------------------------------------------- diff --git a/app/views/partials/experiment-queue-block.blade.php b/app/views/partials/experiment-queue-block.blade.php index d0eb005..d7755e8 100644 --- a/app/views/partials/experiment-queue-block.blade.php +++ b/app/views/partials/experiment-queue-block.blade.php @@ -8,6 +8,7 @@ </div> @endif <input type="hidden" id="queue-array" value="{{ htmlentities( json_encode( $queues ) ) }}"/> +<input type="hidden" id="app-deployment-defaults-array" value="{{ htmlentities( json_encode( $appDeploymentDefaults ) ) }}"/> <input type="hidden" id="queue-defaults-array" value="{{ htmlentities( json_encode( $queueDefaults ) ) }}"/> <div class="form-group required"> @if( count( $queues) > 0 ) @@ -158,6 +159,8 @@ function getQueueData(selectedQueue) { var queues = $.parseJSON($("#queue-array").val()); var queueDefaults = $.parseJSON($("#queue-defaults-array").val()); + var appDefaults = $.parseJSON($("#app-deployment-defaults-array").val()); + var veryLargeValue = 9999999; console.log(queues); $(".queue-view").addClass("hide"); @@ -176,7 +179,9 @@ else $(".node-count").parent().addClass("hide"); - if(queues[i]['defaultNodeCount'] > 0){ + if(appDefaults['nodeCount'] > 0){ + $("#node-count").val(appDefaults['nodeCount']); + }else if(queues[i]['defaultNodeCount'] > 0){ $("#node-count").val(queues[i]['defaultNodeCount']); }else{ $("#node-count").val(queueDefaults['nodeCount']); @@ -195,7 +200,9 @@ else $(".cpu-count").parent().addClass("hide"); - if(queues[i]['defaultCPUCount'] > 0){ + if(appDefaults['cpuCount'] > 0){ + $("#cpu-count").val(appDefaults['cpuCount']); + }else if(queues[i]['defaultCPUCount'] > 0){ $("#cpu-count").val(queues[i]['defaultCPUCount']); }else{ $("#cpu-count").val(queueDefaults['cpuCount']); @@ -215,7 +222,9 @@ else $(".walltime-count").parent().addClass("hide"); - if(queues[i]['defaultWalltime'] > 0) { + if(appDefaults['wallTimeLimit'] > 0){ + $("#wall-time").val(appDefaults['wallTimeLimit']); + }else if(queues[i]['defaultWalltime'] > 0) { $("#wall-time").val(queues[i]['defaultWalltime']); }else{ $("#wall-time").val(queueDefaults['wallTimeLimit']);
