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 22:54:56 UTC
[1/7] airavata-php-gateway git commit: Trigger mirror sync
Repository: airavata-php-gateway
Updated Branches:
refs/heads/master fa310a19e -> 85c0766da
Trigger mirror sync
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/e189880b
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/e189880b
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/e189880b
Branch: refs/heads/master
Commit: e189880bda9b8a34200245224dd33a6069bae0bc
Parents: fa310a1
Author: Marcus Christie <ma...@iu.edu>
Authored: Wed Sep 27 15:00:19 2017 -0400
Committer: Marcus Christie <ma...@iu.edu>
Committed: Wed Sep 27 15:00:19 2017 -0400
----------------------------------------------------------------------
----------------------------------------------------------------------
[5/7] airavata-php-gateway git commit: Set the gateway level maximum
values for walltime, node and CPU counts
Posted by ma...@apache.org.
Set the gateway level maximum values for walltime, node and CPU counts
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/d3900b9a
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/d3900b9a
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/d3900b9a
Branch: refs/heads/master
Commit: d3900b9ab94a9fb5c68d686480429ae003d9a21e
Parents: e189880
Author: Sneha Tilak <ti...@149-160-247-119.dhcp-bl.indiana.edu>
Authored: Fri Sep 29 18:15:38 2017 -0400
Committer: Sneha Tilak <ti...@149-160-247-119.dhcp-bl.indiana.edu>
Committed: Fri Sep 29 18:15:38 2017 -0400
----------------------------------------------------------------------
app/config/pga_config.php.template | 15 ++++++++++
app/controllers/ExperimentController.php | 40 +++++++++++++++++++++++++--
app/libraries/ExperimentUtilities.php | 20 +++++++++++++-
3 files changed, 71 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/d3900b9a/app/config/pga_config.php.template
----------------------------------------------------------------------
diff --git a/app/config/pga_config.php.template b/app/config/pga_config.php.template
index 654a1ed..495c98c 100644
--- a/app/config/pga_config.php.template
+++ b/app/config/pga_config.php.template
@@ -180,6 +180,21 @@ return array(
'wall-time-limit' => '30',
/**
+ * Max node count
+ */
+ 'max-node-count' => '4',
+
+ /**
+ * Max total core count
+ */
+ 'max-total-cpu-count' => '96',
+
+ /**
+ * Max wall time limit
+ */
+ 'max-wall-time-limit' => '120',
+
+ /**
* Enable app-catalog cache
*/
'enable-app-catalog-cache' => true,
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/d3900b9a/app/controllers/ExperimentController.php
----------------------------------------------------------------------
diff --git a/app/controllers/ExperimentController.php b/app/controllers/ExperimentController.php
index 131fa1d..5660a36 100755
--- a/app/controllers/ExperimentController.php
+++ b/app/controllers/ExperimentController.php
@@ -55,7 +55,6 @@ class ExperimentController extends BaseController
"wallTimeLimit" => $wallTimeLimit
);
-
$experimentInputs = array(
"disabled" => ' disabled',
"experimentName" => $_POST['experiment-name'],
@@ -94,7 +93,17 @@ class ExperimentController extends BaseController
} else if (isset($_POST['save']) || isset($_POST['launch'])) {
try {
- $expId = ExperimentUtilities::create_experiment();
+ $computeResourceId = Input::get("crId");
+ //Validate entered queue details
+ $queueValues = array("queueName" => Input::get("queue-name"),
+ "nodeCount" => Input::get("nodeCount"),
+ "cpuCount" => Input::get("cpuCount"),
+ "wallTimeLimit" => Input::get("wallTimeLimit")
+ );
+ 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");
} catch (Exception $ex) {
Log::error("Failed to create experiment!");
Log::error($ex);
@@ -396,7 +405,17 @@ class ExperimentController extends BaseController
{
$experiment = ExperimentUtilities::get_experiment(Input::get('expId')); // update local experiment variable
try {
- $updatedExperiment = ExperimentUtilities::apply_changes_to_experiment($experiment, Input::all());
+ $computeResourceId = Input::get("crId");
+ //Validate entered queue details
+ $queueValues = array("queueName" => Input::get("queue-name"),
+ "nodeCount" => Input::get("nodeCount"),
+ "cpuCount" => Input::get("cpuCount"),
+ "wallTimeLimit" => Input::get("wallTimeLimit")
+ );
+ 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");
} catch (Exception $ex) {
$errMessage = "Failed to update experiment: " . $ex->getMessage();
Log::error($errMessage);
@@ -590,6 +609,21 @@ class ExperimentController extends BaseController
}
return $allowedFileSize;
}
+
+ private function validateQueueData($computeResourceId, $queue)
+ {
+ $queues = ExperimentUtilities::getQueueDatafromResourceId($computeResourceId);
+ $queueName = $queue['queueName'];
+
+ foreach($queues as $aQueue){
+ if($aQueue->queueName == $queueName) {
+ if($queue['validateQueueData'] <= $aQueue->maxNodes && $queue['maxCPUCount'] <= $aQueue->maxProcessors && $queue['wallTimeLimit'] <= $aQueue->maxRunTime)
+ return true;
+ }
+ }
+
+ return false;
+ }
}
?>
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/d3900b9a/app/libraries/ExperimentUtilities.php
----------------------------------------------------------------------
diff --git a/app/libraries/ExperimentUtilities.php b/app/libraries/ExperimentUtilities.php
index 9424893..f3c96ce 100755
--- a/app/libraries/ExperimentUtilities.php
+++ b/app/libraries/ExperimentUtilities.php
@@ -1422,7 +1422,25 @@ class ExperimentUtilities
public static function getQueueDatafromResourceId($crId)
{
$resourceObject = Airavata::getComputeResource(Session::get('authz-token'), $crId);
- return $resourceObject->batchQueues;
+ $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"];
+
+ foreach($queues as $aQueue){
+ if($aQueue->maxNodes > $maxNodeCount){
+ $aQueue->maxNodes = $maxNodeCount;
+ }
+ if($aQueue->maxProcessors > $maxCPUCount){
+ $aQueue->maxProcessors = $maxCPUCount;
+ }
+ if($aQueue->maxRunTime > $maxWallTimeLimit){
+ $aQueue->maxRunTime = $maxWallTimeLimit;
+ }
+ }
+ return $queues;
}
/**
[4/7] airavata-php-gateway git commit: AIRAVATA-2520 Defer running
queue block init code until jquery loaded
Posted by ma...@apache.org.
AIRAVATA-2520 Defer running queue block init code until jquery loaded
Also made some pull request review changes
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/07d3255b
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/07d3255b
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/07d3255b
Branch: refs/heads/master
Commit: 07d3255be5cf882a67b785d69a68b1796d6d5e85
Parents: 33b1b88
Author: Marcus Christie <ma...@iu.edu>
Authored: Fri Sep 29 16:37:14 2017 -0400
Committer: Marcus Christie <ma...@iu.edu>
Committed: Fri Sep 29 16:37:14 2017 -0400
----------------------------------------------------------------------
app/views/experiment/edit.blade.php | 2 -
.../partials/experiment-queue-block.blade.php | 49 +++++++++++---------
2 files changed, 28 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/07d3255b/app/views/experiment/edit.blade.php
----------------------------------------------------------------------
diff --git a/app/views/experiment/edit.blade.php b/app/views/experiment/edit.blade.php
index aeeb620..714db8a 100755
--- a/app/views/experiment/edit.blade.php
+++ b/app/views/experiment/edit.blade.php
@@ -13,8 +13,6 @@
//$appResources = array('Echo' => $echoResources, 'WRF' => $wrfResources);
?>
-<!-- Included the jquery script here! -->
-<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<div class="container">
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/07d3255b/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 8935ff1..61948d4 100644
--- a/app/views/partials/experiment-queue-block.blade.php
+++ b/app/views/partials/experiment-queue-block.blade.php
@@ -123,6 +123,7 @@
</div>
<script>
+var experimentQueueBlockInit = function() {
//To work with experiment edit (Not Ajax)
$( document ).ready(function() {
var selectedQueue = $("#select-queue").val();
@@ -178,15 +179,13 @@
});
});
- //I commented this as I see this as repeated code!
-
- //To work work with experiment create (Ajax)
- // var selectedQueue = $("#select-queue").val();
- // getQueueData(selectedQueue);
- // $("#select-queue").change(function () {
- // var selectedQueue = $(this).val();
- // getQueueData(selectedQueue);
- // });
+ // To work work with experiment create (Ajax)
+ var selectedQueue = $("#select-queue").val();
+ getQueueData(selectedQueue);
+ $("#select-queue").change(function () {
+ var selectedQueue = $(this).val();
+ getQueueData(selectedQueue);
+ });
$("#enable-auto-scheduling").change(function () {
var selectedQueue = $("#select-queue").val();
@@ -198,10 +197,10 @@
var queueDefaults = $.parseJSON($("#queue-defaults-array").val());
var appDefaults = $.parseJSON($("#app-deployment-defaults-array").val());
//getting the html values we set to hidden fields above!
- var nodeCount = parseInt($("#passed-nodeCount").val());
- var cpuCount = parseInt($('#passed-cpuCount').val());
- var wallTime = parseInt($('#passed-wallTime').val());
- var physicalMemory = parseInt($('#passed-physicalmem').val());
+ var passedNodeCount = parseInt($("#passed-nodeCount").val());
+ var passedCpuCount = parseInt($('#passed-cpuCount').val());
+ var passedWallTime = parseInt($('#passed-wallTime').val());
+ var passedPhysicalMemory = parseInt($('#passed-physicalmem').val());
var veryLargeValue = 9999999;
console.log(queues);
@@ -229,8 +228,8 @@
$("#node-count").val(queueDefaults['nodeCount']);
}
// load previously set values on page load.
- if(nodeCount!=0){
- $("#node-count").val(nodeCount);
+ if(passedNodeCount!=0){
+ $("#node-count").val(passedNodeCount);
}
//core-count
@@ -255,8 +254,8 @@
}
// load previously set values on page load.
- if(cpuCount!=0){
- $("#cpu-count").val(cpuCount);
+ if(passedCpuCount!=0){
+ $("#cpu-count").val(passedCpuCount);
}
@@ -280,8 +279,8 @@
}
// load previously set values on page load.
- if(wallTime!=0){
- $("#wall-time").val(wallTime);
+ if(passedWallTime!=0){
+ $("#wall-time").val(passedWallTime);
}
//memory-count
@@ -304,8 +303,8 @@
}
// load previously set values on page load.
- if(physicalMemory!=0){
- $("#memory-count").val(physicalMemory);
+ if(passedPhysicalMemory!=0){
+ $("#memory-count").val(passedPhysicalMemory);
}
@@ -336,4 +335,12 @@
}
$(".queue-view").removeClass("hide");
}
+}
+
+// On initial load jQuery isn't loaded until later so wait until DOMContentLoaded
+if (typeof $ === 'undefined') {
+ document.addEventListener("DOMContentLoaded", experimentQueueBlockInit);
+} else {
+ experimentQueueBlockInit();
+}
</script>
\ No newline at end of file
[2/7] airavata-php-gateway git commit: Changed the : notation to =>
for logo key in auth-options array
Posted by ma...@apache.org.
Changed the : notation to => for logo key in auth-options array
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/89547b30
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/89547b30
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/89547b30
Branch: refs/heads/master
Commit: 89547b3081d895e46c9f5dd2be78bbb379e88d08
Parents: fa310a1
Author: Marcus Christie <ma...@iu.edu>
Authored: Fri Sep 29 16:01:53 2017 -0400
Committer: Marcus Christie <ma...@iu.edu>
Committed: Fri Sep 29 16:01:53 2017 -0400
----------------------------------------------------------------------
app/config/pga_config.php.template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/89547b30/app/config/pga_config.php.template
----------------------------------------------------------------------
diff --git a/app/config/pga_config.php.template b/app/config/pga_config.php.template
index 654a1ed..48ddc1d 100644
--- a/app/config/pga_config.php.template
+++ b/app/config/pga_config.php.template
@@ -74,7 +74,7 @@ return array(
// http://www.keycloak.org/docs/2.5/server_admin/topics/identity-broker/suggested.html
'oauth-authorize-url-extra-params' => 'kc_idp_hint=oidc',
// Optional
- 'logo': '/assets/path_to_image.png'
+ 'logo' => '/assets/path_to_image.png'
],
],
[3/7] airavata-php-gateway git commit: Fixed the client side
validation issue for experiment edit mode issue #2520 Included a jquery
script for edit page as it seems to be missing it Added changes to load
previously set values through jquery
Posted by ma...@apache.org.
Fixed the client side validation issue for experiment edit mode
issue #2520
Included a jquery script for edit page as it seems to be missing it
Added changes to load previously set values through jquery
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/33b1b88f
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/33b1b88f
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/33b1b88f
Branch: refs/heads/master
Commit: 33b1b88ff16e998bc8d36a2683619732e30bcb6f
Parents: 89547b3
Author: stephenpaul2727 <st...@gmail.com>
Authored: Tue Sep 26 21:27:06 2017 -0400
Committer: Marcus Christie <ma...@iu.edu>
Committed: Fri Sep 29 16:03:38 2017 -0400
----------------------------------------------------------------------
app/views/experiment/edit.blade.php | 3 +-
.../partials/experiment-queue-block.blade.php | 70 ++++++++++++++++++--
2 files changed, 65 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/33b1b88f/app/views/experiment/edit.blade.php
----------------------------------------------------------------------
diff --git a/app/views/experiment/edit.blade.php b/app/views/experiment/edit.blade.php
index 9e6b156..aeeb620 100755
--- a/app/views/experiment/edit.blade.php
+++ b/app/views/experiment/edit.blade.php
@@ -13,7 +13,8 @@
//$appResources = array('Echo' => $echoResources, 'WRF' => $wrfResources);
?>
-
+<!-- Included the jquery script here! -->
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<div class="container">
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/33b1b88f/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 b78d391..8935ff1 100644
--- a/app/views/partials/experiment-queue-block.blade.php
+++ b/app/views/partials/experiment-queue-block.blade.php
@@ -10,6 +10,35 @@
<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 ) ) }}"/>
+
+<!-- Setting the node count we got from previous page to a hidden field for jquery -->
+@if(isset($expVal['scheduling']->nodeCount))
+<input type="hidden" id="passed-nodeCount" value="{{ $expVal['scheduling']->nodeCount }}"/>
+@else
+<input type="hidden" id="passed-nodeCount" value="0"/>
+@endif
+
+<!-- Setting the cpu count we got from previous page to a hidden field for jquery -->
+@if(isset($expVal['scheduling']->totalCPUCount))
+<input type="hidden" id="passed-cpuCount" value="{{ $expVal['scheduling']->totalCPUCount }}"/>
+@else
+<input type="hidden" id="passed-cpuCount" value="0"/>
+@endif
+
+<!-- Setting the wall time limit we got from previous page to a hidden field for jquery -->
+@if(isset($expVal['scheduling']->wallTimeLimit))
+<input type="hidden" id="passed-wallTime" value="{{ $expVal['scheduling']->wallTimeLimit }}"/>
+@else
+<input type="hidden" id="passed-wallTime" value="0"/>
+@endif
+
+<!-- Setting the physical memory we got from previous page to a hidden field for jquery -->
+@if(isset($expVal['scheduling']->totalPhysicalMemory))
+<input type="hidden" id="passed-physicalmem" value="{{ $expVal['scheduling']->totalPhysicalMemory }}"/>
+@else
+<input type="hidden" id="passed-physicalmem" value="0"/>
+@endif
+
<div class="form-group required">
@if( count( $queues) > 0 )
<label class="control-label" for="node-count">Select a Queue</label>
@@ -148,14 +177,16 @@
readBlob(startByte, endByte, fileId);
});
});
+
+ //I commented this as I see this as repeated code!
//To work work with experiment create (Ajax)
- var selectedQueue = $("#select-queue").val();
- getQueueData(selectedQueue);
- $("#select-queue").change(function () {
- var selectedQueue = $(this).val();
- getQueueData(selectedQueue);
- });
+ // var selectedQueue = $("#select-queue").val();
+ // getQueueData(selectedQueue);
+ // $("#select-queue").change(function () {
+ // var selectedQueue = $(this).val();
+ // getQueueData(selectedQueue);
+ // });
$("#enable-auto-scheduling").change(function () {
var selectedQueue = $("#select-queue").val();
@@ -166,8 +197,13 @@
var queues = $.parseJSON($("#queue-array").val());
var queueDefaults = $.parseJSON($("#queue-defaults-array").val());
var appDefaults = $.parseJSON($("#app-deployment-defaults-array").val());
-
+ //getting the html values we set to hidden fields above!
+ var nodeCount = parseInt($("#passed-nodeCount").val());
+ var cpuCount = parseInt($('#passed-cpuCount').val());
+ var wallTime = parseInt($('#passed-wallTime').val());
+ var physicalMemory = parseInt($('#passed-physicalmem').val());
var veryLargeValue = 9999999;
+
console.log(queues);
$(".queue-view").addClass("hide");
for (var i = 0; i < queues.length; i++) {
@@ -192,6 +228,10 @@
}else{
$("#node-count").val(queueDefaults['nodeCount']);
}
+ // load previously set values on page load.
+ if(nodeCount!=0){
+ $("#node-count").val(nodeCount);
+ }
//core-count
if (queues[i]['maxProcessors'] != 0 && queues[i]['maxProcessors'] != null) {
@@ -214,6 +254,11 @@
$("#cpu-count").val(queueDefaults['cpuCount']);
}
+ // load previously set values on page load.
+ if(cpuCount!=0){
+ $("#cpu-count").val(cpuCount);
+ }
+
//walltime-count
if (queues[i]['maxRunTime'] != null && queues[i]['maxRunTime'] != 0) {
@@ -234,6 +279,11 @@
$("#wall-time").val(queueDefaults['wallTimeLimit']);
}
+ // load previously set values on page load.
+ if(wallTime!=0){
+ $("#wall-time").val(wallTime);
+ }
+
//memory-count
if (queues[i]['maxMemory'] != 0 && queues[i]['maxMemory'] != null) {
if($('#enable-auto-scheduling').prop('checked')){
@@ -253,6 +303,12 @@
var cpusPerNode = queueDefaults['cpusPerNode'];
}
+ // load previously set values on page load.
+ if(physicalMemory!=0){
+ $("#memory-count").val(physicalMemory);
+ }
+
+
var nodeCount=$("#node-count");
var cpuCount=$("#cpu-count");
[7/7] airavata-php-gateway git commit: AIRAVATA-2521 Some pull
requests fixes
Posted by ma...@apache.org.
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/master
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))
[6/7] airavata-php-gateway git commit: Merge branch
'AIRAVATA-2520-bugfix' into gateway-level-max-queue-values
Posted by ma...@apache.org.
Merge branch 'AIRAVATA-2520-bugfix' into gateway-level-max-queue-values
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/e03d5e77
Tree: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/tree/e03d5e77
Diff: http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/diff/e03d5e77
Branch: refs/heads/master
Commit: e03d5e7789f3a13a55dd7c5846fa8c97d60c5ca7
Parents: d3900b9 07d3255
Author: Marcus Christie <ma...@iu.edu>
Authored: Mon Oct 2 10:11:03 2017 -0400
Committer: Marcus Christie <ma...@iu.edu>
Committed: Mon Oct 2 10:11:03 2017 -0400
----------------------------------------------------------------------
app/config/pga_config.php.template | 2 +-
app/views/experiment/edit.blade.php | 1 -
.../partials/experiment-queue-block.blade.php | 69 +++++++++++++++++++-
3 files changed, 67 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/e03d5e77/app/config/pga_config.php.template
----------------------------------------------------------------------