You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sh...@apache.org on 2014/12/24 16:28:28 UTC

airavata git commit: Handled output inclusive and exclusive properties in gsissh provider and modified games and nwchem appliation registration code

Repository: airavata
Updated Branches:
  refs/heads/master c29d4040b -> 61d0c7369


Handled output inclusive and exclusive properties in gsissh provider and modified games and nwchem appliation registration code


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/61d0c736
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/61d0c736
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/61d0c736

Branch: refs/heads/master
Commit: 61d0c7369a68261a1018d5e6523674b23d5cd28a
Parents: c29d404
Author: shamrath <sh...@gmail.com>
Authored: Wed Dec 24 10:29:30 2014 -0500
Committer: shamrath <sh...@gmail.com>
Committed: Wed Dec 24 10:29:30 2014 -0500

----------------------------------------------------------------------
 .../tools/RegisterSampleApplications.java       | 31 +++++++++++---------
 .../gfac/gsissh/util/GFACGSISSHUtils.java       | 13 +++++++-
 2 files changed, 29 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/61d0c736/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java
index 19d0bfe..7a829fc 100644
--- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java
+++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/tools/RegisterSampleApplications.java
@@ -371,7 +371,7 @@ public class RegisterSampleApplications {
         //Registering Lammps
         registerLammpsInterface();
         //Registrting Gamess
-//        registerGamessInterface();
+        registerGamessInterface();
 
         //Registering NWChem
         registerNWChemInterface();
@@ -393,26 +393,26 @@ public class RegisterSampleApplications {
             System.out.println("#### Registering Gamess Interface #### \n");
 
             List<String> appModules = new ArrayList<String>();
-            appModules.add(gamessDescription);
+            appModules.add(gamessModuleId);
 
 
             List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>();
             applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("gams_input", "",
-                    DataType.URI, null, 1, ValidityType.REQUIRED, CommandLineType.EXCLUSIVE, false, "Gamess Input file", null));
-            applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("EXT_FILE", "",
-                    DataType.URI, null, 1, ValidityType.OPTIONAL, CommandLineType.INCLUSIVE, false, "Gamess EXT file", null));
+                    DataType.URI, null, 1, ValidityType.REQUIRED, CommandLineType.INCLUSIVE, false, "Gamess Input file", null));
+//            applicationInputs.add(RegisterSampleApplicationsUtils.createAppInput("EXT_FILE", "",
+//                    DataType.URI, null, 2, ValidityType.OPTIONAL, CommandLineType.EXCLUSIVE, false, "Gamess EXT file", null));
 
             List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>();
             applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("gams_output",
-                    "", DataType.URI, ValidityType.REQUIRED, CommandLineType.EXCLUSIVE));
-            applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("dat_file",
                     "", DataType.URI, ValidityType.REQUIRED, CommandLineType.INCLUSIVE));
+            applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("dat_file",
+                    "", DataType.URI, ValidityType.REQUIRED, CommandLineType.EXCLUSIVE));
             applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("trj_file",
-                    "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.INCLUSIVE));
+                    "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.EXCLUSIVE));
             applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("rst_file",
-                    "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.INCLUSIVE));
+                    "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.EXCLUSIVE));
             applicationOutputs.add(RegisterSampleApplicationsUtils.createAppOutput("f10_file",
-                    "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.INCLUSIVE));
+                    "", DataType.URI, ValidityType.OPTIONAL, CommandLineType.EXCLUSIVE));
 
 
             gamessInterfaceId = airavataClient.registerApplicationInterface(
@@ -710,12 +710,13 @@ public class RegisterSampleApplications {
             appModules.add(nwChemModuleId);
 
             InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Water_Molecule_Input", null,
-                    DataType.URI, null, 1,null, null, false, "Water Molecule Input File - water.nw", null);
+                    DataType.URI, null, 1,ValidityType.REQUIRED , CommandLineType.INCLUSIVE, false, "Water Molecule Input File - water.nw", null);
 
             List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>();
             applicationInputs.add(input1);
 
-            OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("NWChem_Execution_Log",null,DataType.URI, null, null);
+            OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("NWChem_Execution_Log",
+                    null, DataType.URI, ValidityType.REQUIRED, CommandLineType.INCLUSIVE);
 
             List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>();
             applicationOutputs.add(output1);
@@ -976,10 +977,12 @@ public class RegisterSampleApplications {
             System.out.println("LAMMPS on stampede deployment Id " + lammpsAppDeployId);
 
             //Register NWChem
+            List<String> nwChemModuleCmds = new ArrayList<String>();
+            nwChemModuleCmds.add("module load nwchem");
             String nwChemAppDeployId = airavataClient.registerApplicationDeployment(
                     RegisterSampleApplicationsUtils.createApplicationDeployment(nwChemModuleId, stampedeResourceId,
-                            "/home1/01437/ogce/production/app_wrappers/nwchem_wrapper.sh", ApplicationParallelismType.MPI,
-                            nwChemDescription, null));
+                            "nwchem", ApplicationParallelismType.MPI,
+                            nwChemDescription, nwChemModuleCmds));
             System.out.println("NWChem on stampede deployment Id " + nwChemAppDeployId);
 
             //Register Trinity

http://git-wip-us.apache.org/repos/asf/airavata/blob/61d0c736/modules/gfac/gfac-gsissh/src/main/java/org/apache/airavata/gfac/gsissh/util/GFACGSISSHUtils.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-gsissh/src/main/java/org/apache/airavata/gfac/gsissh/util/GFACGSISSHUtils.java b/modules/gfac/gfac-gsissh/src/main/java/org/apache/airavata/gfac/gsissh/util/GFACGSISSHUtils.java
index 68e0072..266c0e4 100644
--- a/modules/gfac/gfac-gsissh/src/main/java/org/apache/airavata/gfac/gsissh/util/GFACGSISSHUtils.java
+++ b/modules/gfac/gfac-gsissh/src/main/java/org/apache/airavata/gfac/gsissh/util/GFACGSISSHUtils.java
@@ -43,6 +43,7 @@ import org.apache.airavata.gsi.ssh.util.CommonUtils;
 import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
 import org.apache.airavata.model.appcatalog.appinterface.CommandLineType;
 import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
+import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
 import org.apache.airavata.model.appcatalog.computeresource.*;
 import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
 import org.apache.airavata.model.workspace.experiment.ComputationalResourceScheduling;
@@ -198,7 +199,6 @@ public class GFACGSISSHUtils {
 
         List<String> inputValues = new ArrayList<String>();
         MessageContext input = jobExecutionContext.getInMessageContext();
-        Map<String, Object> inputs = input.getParameters();
         // sort the inputs first and then build the command List
         Comparator<InputDataObjectType> inputOrderComparator = new Comparator<InputDataObjectType>() {
             @Override
@@ -228,6 +228,17 @@ public class GFACGSISSHUtils {
                 inputValues.add(inputDataObjectType.getValue());
             }
         }
+
+        Map<String, Object> outputParams = jobExecutionContext.getOutMessageContext().getParameters();
+        for (Object outputParam : outputParams.values()) {
+            if (outputParam instanceof OutputDataObjectType) {
+                OutputDataObjectType output = (OutputDataObjectType) outputParam;
+                if (output.getValue() != null && !output.getValue().equals("") && output.getAddedToCommandLine() != null
+                        && output.getAddedToCommandLine() == CommandLineType.INCLUSIVE) {
+                    inputValues.add(output.getValue());
+                }
+            }
+        }
         jobDescriptor.setInputValues(inputValues);
 
         jobDescriptor.setUserName(((GSISSHAbstractCluster) cluster).getServerInfo().getUserName());