You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2017/10/02 14:38:35 UTC
[4/5] airavata-php-gateway git commit: AIRAVATA-2521 Some pull
requests fixes
AIRAVATA-2521 Some pull requests fixes
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/85c0766d
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/85c0766d
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/85c0766d
Branch: refs/heads/develop
Commit: 85c0766dace86296365f975ea0c36b3d6819c696
Parents: e03d5e7
Author: Marcus Christie <ma...@iu.edu>
Authored: Mon Oct 2 10:37:09 2017 -0400
Committer: Marcus Christie <ma...@iu.edu>
Committed: Mon Oct 2 10:37:09 2017 -0400
----------------------------------------------------------------------
app/controllers/ExperimentController.php | 32 ++++++++++++---------
app/libraries/ExperimentUtilities.php | 12 ++++----
app/views/partials/experiment-inputs.blade.php | 2 +-
3 files changed, 25 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/85c0766d/app/controllers/ExperimentController.php
----------------------------------------------------------------------
diff --git a/app/controllers/ExperimentController.php b/app/controllers/ExperimentController.php
index 5660a36..36131f9 100755
--- a/app/controllers/ExperimentController.php
+++ b/app/controllers/ExperimentController.php
@@ -93,17 +93,17 @@ class ExperimentController extends BaseController
} else if (isset($_POST['save']) || isset($_POST['launch'])) {
try {
- $computeResourceId = Input::get("crId");
+ $computeResourceId = Input::get("compute-resource");
//Validate entered queue details
$queueValues = array("queueName" => Input::get("queue-name"),
- "nodeCount" => Input::get("nodeCount"),
- "cpuCount" => Input::get("cpuCount"),
- "wallTimeLimit" => Input::get("wallTimeLimit")
+ "nodeCount" => Input::get("node-count"),
+ "cpuCount" => Input::get("cpu-count"),
+ "wallTimeLimit" => Input::get("walltime-count")
);
if($this->validateQueueData($computeResourceId, $queueValues))
$expId = ExperimentUtilities::create_experiment();
else
- Redirect::to("experiment/create")->with("error-message", "Validate the number f nodes, CPUs and the wall time limit");
+ return Redirect::to("experiment/create")->with("error-message", "Validate the number of nodes, CPUs and the wall time limit");
} catch (Exception $ex) {
Log::error("Failed to create experiment!");
Log::error($ex);
@@ -329,6 +329,7 @@ class ExperimentController extends BaseController
$userComputeResourcePreferences = URPUtilities::get_all_user_compute_resource_prefs();
$userHasComputeResourcePreference = array_key_exists($expVal['scheduling']->resourceHostId, $userComputeResourcePreferences);
+ $batchQueues = ExperimentUtilities::getQueueDatafromResourceId($computeResourceId);
$experimentInputs = array(
"disabled" => ' ',
@@ -347,7 +348,8 @@ class ExperimentController extends BaseController
'project' => $experiment->projectId,
'expVal' => $expVal,
'cloning' => true,
- 'advancedOptions' => Config::get('pga_config.airavata')["advanced-experiment-options"]
+ 'advancedOptions' => Config::get('pga_config.airavata')["advanced-experiment-options"],
+ 'batchQueues' => $batchQueues
);
if(Config::get('pga_config.airavata')["data-sharing-enabled"]){
@@ -405,17 +407,19 @@ class ExperimentController extends BaseController
{
$experiment = ExperimentUtilities::get_experiment(Input::get('expId')); // update local experiment variable
try {
- $computeResourceId = Input::get("crId");
+ $computeResourceId = Input::get("compute-resource");
//Validate entered queue details
$queueValues = array("queueName" => Input::get("queue-name"),
- "nodeCount" => Input::get("nodeCount"),
- "cpuCount" => Input::get("cpuCount"),
- "wallTimeLimit" => Input::get("wallTimeLimit")
+ "nodeCount" => Input::get("node-count"),
+ "cpuCount" => Input::get("cpu-count"),
+ "wallTimeLimit" => Input::get("walltime-count")
);
- if($this->validateQueueData($computeResourceId, $queueValues))
+ if($this->validateQueueData($computeResourceId, $queueValues)) {
$updatedExperiment = ExperimentUtilities::apply_changes_to_experiment($experiment, Input::all());
- else
- Redirect::to("experiment/create")->with("error-message", "Validate the number of nodes, CPUs and the wall time limit");
+ } else {
+ $errMessage = "Validate the number of nodes, CPUs and the wall time limit";
+ return Redirect::to("experiment/edit?expId=" . urlencode(Input::get('expId')))->with("error-message", $errMessage);
+ }
} catch (Exception $ex) {
$errMessage = "Failed to update experiment: " . $ex->getMessage();
Log::error($errMessage);
@@ -617,7 +621,7 @@ class ExperimentController extends BaseController
foreach($queues as $aQueue){
if($aQueue->queueName == $queueName) {
- if($queue['validateQueueData'] <= $aQueue->maxNodes && $queue['maxCPUCount'] <= $aQueue->maxProcessors && $queue['wallTimeLimit'] <= $aQueue->maxRunTime)
+ if($queue['nodeCount'] <= $aQueue->maxNodes && $queue['cpuCount'] <= $aQueue->maxProcessors && $queue['wallTimeLimit'] <= $aQueue->maxRunTime)
return true;
}
}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/85c0766d/app/libraries/ExperimentUtilities.php
----------------------------------------------------------------------
diff --git a/app/libraries/ExperimentUtilities.php b/app/libraries/ExperimentUtilities.php
index f3c96ce..4ddc460 100755
--- a/app/libraries/ExperimentUtilities.php
+++ b/app/libraries/ExperimentUtilities.php
@@ -1425,18 +1425,18 @@ class ExperimentUtilities
$queues = $resourceObject->batchQueues;
//Defining maximum allowed value for queue resources
- $maxNodeCount = Config::get('pga_config.airavata')["max-node-count"];
- $maxCPUCount = Config::get('pga_config.airavata')["max-total-cpu-count"];
- $maxWallTimeLimit = Config::get('pga_config.airavata')["max-wall-time-limit"];
+ $maxNodeCount = Config::get('pga_config.airavata.max-node-count', null);
+ $maxCPUCount = Config::get('pga_config.airavata.max-total-cpu-count', null);
+ $maxWallTimeLimit = Config::get('pga_config.airavata.max-wall-time-limit', null);
foreach($queues as $aQueue){
- if($aQueue->maxNodes > $maxNodeCount){
+ if($maxNodeCount && $aQueue->maxNodes > $maxNodeCount){
$aQueue->maxNodes = $maxNodeCount;
}
- if($aQueue->maxProcessors > $maxCPUCount){
+ if($maxCPUCount && $aQueue->maxProcessors > $maxCPUCount){
$aQueue->maxProcessors = $maxCPUCount;
}
- if($aQueue->maxRunTime > $maxWallTimeLimit){
+ if($maxWallTimeLimit && $aQueue->maxRunTime > $maxWallTimeLimit){
$aQueue->maxRunTime = $maxWallTimeLimit;
}
}
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/85c0766d/app/views/partials/experiment-inputs.blade.php
----------------------------------------------------------------------
diff --git a/app/views/partials/experiment-inputs.blade.php b/app/views/partials/experiment-inputs.blade.php
index 1318961..eb94ae2 100644
--- a/app/views/partials/experiment-inputs.blade.php
+++ b/app/views/partials/experiment-inputs.blade.php
@@ -83,7 +83,7 @@
<div class="queue-view">
@if(isset($expInputs['expVal']) )
@include( 'partials/experiment-queue-block', array('queues'=>
- $expInputs['expVal']['computeResource']->batchQueues, 'expVal' => $expInputs['expVal'],
+ $expInputs['batchQueues'], 'expVal' => $expInputs['expVal'],
'useUserCRPref' => $expInputs['useUserCRPref'],
'userHasComputeResourcePreference' => $expInputs['userHasComputeResourcePreference'],
'cpusPerNode' => $cpusPerNode))