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

[1/2] airavata git commit: fixed simple experiment run [AIRAVATA-1473]

Repository: airavata
Updated Branches:
  refs/heads/master 97b384b06 -> 5413e6718


fixed simple experiment run [AIRAVATA-1473]

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

Branch: refs/heads/master
Commit: febd0c40d6445d364d42fb13884075906e44507a
Parents: 47e8214
Author: msmemon <sh...@gmail.com>
Authored: Tue Nov 11 16:12:48 2014 +0100
Committer: msmemon <sh...@gmail.com>
Committed: Tue Nov 11 16:12:48 2014 +0100

----------------------------------------------------------------------
 .../client/samples/CreateLaunchExperiment.java  | 22 ++++--
 .../tools/RegisterSampleApplications.java       |  9 ++-
 .../server/src/main/assembly/bin-assembly.xml   | 25 ++++---
 .../gfac/bes/provider/impl/BESProvider.java     | 16 ++---
 .../bes/security/UNICORESecurityContext.java    |  6 +-
 .../gfac/bes/utils/DataTransferrer.java         | 53 +++++++++++++-
 .../airavata/gfac/bes/utils/JSDLUtils.java      |  6 +-
 .../gfac/bes/utils/UASDataStagingProcessor.java | 73 +++++++++++---------
 .../registry/jpa/impl/ExperimentRegistry.java   |  7 +-
 9 files changed, 148 insertions(+), 69 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
index 2845bc6..e0b47bb 100644
--- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
+++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
@@ -42,6 +42,8 @@ import org.slf4j.LoggerFactory;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
+import java.util.Random;
+import java.util.UUID;
 
 public class CreateLaunchExperiment {
 
@@ -53,7 +55,7 @@ public class CreateLaunchExperiment {
     private static final String DEFAULT_GATEWAY = "default.registry.gateway";
     private static Airavata.Client airavataClient;
 
-    private static String echoAppId = "Echo_6281480a-9887-4a0f-8311-59bbaf738e54";
+    private static String echoAppId = "Echo_70892623-ef16-4efb-a9f0-b12a2861e27a";
     private static String wrfAppId = "WRF_5f097c9c-7066-49ec-aed7-4e39607b3adc";
     private static String amberAppId = "Amber_89906be6-5678-49a6-9d04-a0604fbdef2e";
 
@@ -179,7 +181,7 @@ public class CreateLaunchExperiment {
                         userConfigurationData.setAiravataAutoSchedule(false);
                         userConfigurationData.setOverrideManualScheduledParams(false);
                         userConfigurationData.setComputationalResourceScheduling(scheduling);
-                        simpleExperiment.setUserConfigurationData(userConfigurationData);
+                        
                         return client.createExperiment(simpleExperiment);
                     }
                 }
@@ -203,18 +205,24 @@ public class CreateLaunchExperiment {
     
     public static String createEchoExperimentForFSD(Airavata.Client client) throws TException {
         try {
+        	// these are template variables and do not need to have values, as it is a data model.
             List<DataObjectType> exInputs = new ArrayList<DataObjectType>();
             DataObjectType input = new DataObjectType();
             input.setKey("Input_to_Echo");
             input.setType(DataType.STRING);
             input.setValue("Echoed_Output=Hello World");
             exInputs.add(input);
+            DataObjectType i2 = new DataObjectType();
+            i2.setKey("Input_to_Echo1");
+            i2.setType(DataType.URI);
+            i2.setValue("http://shrib.com/22QmrrX4");
+            exInputs.add(i2);
 
             List<DataObjectType> exOut = new ArrayList<DataObjectType>();
             DataObjectType output = new DataObjectType();
-            output.setKey("echo_output");
+            output.setKey("Echoed_Output");
             output.setType(DataType.STRING);
-            output.setValue("");
+            output.setValue("22QmrrX4");
             exOut.add(output);
             
             
@@ -235,7 +243,13 @@ public class CreateLaunchExperiment {
                         userConfigurationData.setAiravataAutoSchedule(false);
                         userConfigurationData.setOverrideManualScheduledParams(false);
                         userConfigurationData.setComputationalResourceScheduling(scheduling);
+                        
+                        // set output directory 
+                        AdvancedOutputDataHandling dataHandling = new AdvancedOutputDataHandling();
+                        dataHandling.setOutputDataDir("/tmp/airavata/output/"+UUID.randomUUID().toString()+"/");
+                        userConfigurationData.setAdvanceOutputDataHandling(dataHandling);
                         simpleExperiment.setUserConfigurationData(userConfigurationData);
+                        
                         return client.createExperiment(simpleExperiment);
                     }
                 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/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 bd4023b..1e4b591 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
@@ -531,12 +531,17 @@ public class RegisterSampleApplications {
 
             InputDataObjectType input1 = RegisterSampleApplicationsUtils.createAppInput("Input_to_Echo", "Hello World",
                     DataType.STRING, null, false, "A test string to Echo", null);
+            
+            InputDataObjectType input2 = RegisterSampleApplicationsUtils.createAppInput("Input_to_Echo1", "http://shrib.com/22QmrrX4",
+                    DataType.URI, null, false, "A test uri to Echo", null);
 
+            
             List<InputDataObjectType> applicationInputs = new ArrayList<InputDataObjectType>();
             applicationInputs.add(input1);
+            applicationInputs.add(input2);
 
             OutputDataObjectType output1 = RegisterSampleApplicationsUtils.createAppOutput("Echoed_Output",
-                    "", DataType.STRING);
+                    "22QmrrX4", DataType.STRING);
 
             List<OutputDataObjectType> applicationOutputs = new ArrayList<OutputDataObjectType>();
             applicationOutputs.add(output1);
@@ -1036,7 +1041,7 @@ public class RegisterSampleApplications {
             //Register Echo
             String echoAppDeployId = airavataClient.registerApplicationDeployment(
                     RegisterSampleApplicationsUtils.createApplicationDeployment(echoModuleId, fsdResourceId,
-                            "/bin/date", ApplicationParallelismType.SERIAL, echoDescription));
+                            "/bin/echo", ApplicationParallelismType.SERIAL, echoDescription));
             System.out.println("Echo on FSD deployment Id " + echoAppDeployId);
 
         } catch (TException e) {

http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/modules/distribution/server/src/main/assembly/bin-assembly.xml
----------------------------------------------------------------------
diff --git a/modules/distribution/server/src/main/assembly/bin-assembly.xml b/modules/distribution/server/src/main/assembly/bin-assembly.xml
index 32cb5e7..6ab1d13 100644
--- a/modules/distribution/server/src/main/assembly/bin-assembly.xml
+++ b/modules/distribution/server/src/main/assembly/bin-assembly.xml
@@ -17,13 +17,13 @@
         <!ELEMENT formats (format)*>
         <!ELEMENT format (#PCDATA)>
         <!ELEMENT fileSets (fileSet)*>
-        <!ELEMENT fileSet (directory|outputDirectory|includes)*>
+        <!ELEMENT fileSet (directory|outputDirectory|fileMode|includes)*>
         <!ELEMENT directory (#PCDATA)>
         <!ELEMENT outputDirectory (#PCDATA)>
         <!ELEMENT includes (include)*>
         <!ELEMENT include (#PCDATA)>
         <!ELEMENT dependencySets (dependencySet)*>
-        <!ELEMENT dependencySet (outputDirectory|includes)*>
+        <!ELEMENT dependencySet (outputDirectory|outputFileNameMapping|includes)*>
         ]>
 <assembly>
 	<id>bin</id>
@@ -159,8 +159,7 @@
 	<dependencySets>
 		<dependencySet>
 			<outputDirectory>lib</outputDirectory>
-			<outputFileNameMapping>${artifact.artifactId}.${artifact.extension}
-			</outputFileNameMapping>
+			<outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping>
 			<includes>
 				<include>org.apache.derby:derby:jar</include>
 				<include>org.apache.derby:derbytools:jar</include>
@@ -280,16 +279,17 @@
 				<include>pl.edu.icm.saml:samly2</include>
 				<include>org.apache.ws.security:wss4j</include>
 				<include>org.json:json</include>
-				<include>org.apache.cxf:cxf-rt-databinding-xmlbeans</include>
-				<include>org.apache.cxf:cxf-api</include>
+				<!-- CXF deps start -->
 				<include>org.codehaus.woodstox:woodstox-core-asl</include>
 				<include>org.codehaus.woodstox:stax2-api</include>
+				<include>org.apache.cxf:cxf-rt-databinding-xmlbeans</include>
+				<include>org.apache.cxf:cxf-api</include>
 				<include>org.apache.ws.xmlschema:xmlschema-core</include>
+				<include>org.apache.cxf:cxf-api</include>
+				<include>org.apache.cxf:cxf-rt-databinding-xmlbeans</include>
 				<include>org.apache.cxf:cxf-rt-core</include>
-				<include>com.sun.xml.bind:jaxb-impl</include>
 				<include>org.apache.cxf:cxf-rt-frontend-jaxws</include>
-				<include>xml-resolver:xml-resolver</include>
-				<include>asm:asm</include>
+				<include>org.apache.cxf:cxf-rt-frontend-simple</include>
 				<include>org.apache.cxf:cxf-rt-bindings-soap</include>
 				<include>org.apache.cxf:cxf-rt-databinding-jaxb</include>
 				<include>org.apache.cxf:cxf-rt-bindings-xml</include>
@@ -298,8 +298,13 @@
 				<include>org.apache.cxf:cxf-rt-ws-policy</include>
 				<include>org.apache.cxf:cxf-rt-transports-http</include>
 				<include>org.apache.cxf:cxf-rt-features-clustering</include>
-				<include>org.apache.neethi:neethi</include>
 				<include>org.apache.cxf:cxf-rt-frontend-jaxws</include>
+				<include>org.apache.cxf:cxf-bundle</include>
+				<!-- // CXF deps end -->
+				<include>com.sun.xml.bind:jaxb-impl</include>
+				<include>org.apache.neethi:neethi:3.0.2</include>
+				<include>xml-resolver:xml-resolver</include>
+				<include>asm:asm</include>
 				<include>xml-resolver:xml-resolver</include>
 				<include>org.eclipse.jetty:jetty-servlet</include>
 				<include>org.eclipse.jetty:jetty-security</include>

http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java
index 7ed038a..044ffa2 100644
--- a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java
+++ b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/provider/impl/BESProvider.java
@@ -187,17 +187,17 @@ public class BESProvider extends AbstractProvider implements GFacProvider,
 						.toString();
 			}
 			log.info("JobID: " + jobId);
-			jobDetails.setJobID(activityEpr.toString());
-			jobDetails.setJobDescription(activityEpr.toString());
+			jobDetails.setJobID(jobId);
+			jobDetails.setJobDescription(jobId);
 
 			jobExecutionContext.setJobDetails(jobDetails);
 			try {
 			log.info(formatStatusMessage(activityEpr.getAddress()
 					.getStringValue(), factory.getActivityStatus(activityEpr)
 					.toString()));
-
+			
 			jobExecutionContext.getNotifier().publish(new UnicoreJobIDEvent(jobId));
-			GFacUtils.saveJobStatus(jobExecutionContext, details,JobState.SUBMITTED);
+//			GFacUtils.saveJobStatus(jobExecutionContext, details,JobState.SUBMITTED);
 
 			factory.getActivityStatus(activityEpr);
 			log.info(formatStatusMessage(activityEpr.getAddress()
@@ -215,8 +215,8 @@ public class BESProvider extends AbstractProvider implements GFacProvider,
 					JobState applicationJobStatus = getApplicationJobStatus(activityStatus);
 					String jobStatusMessage = "Status of job " + jobId + "is "
 							+ applicationJobStatus;
-					GFacUtils.updateJobStatus(jobExecutionContext, jobDetails,
-							applicationJobStatus);
+					//TODO: properly use GFacUtils..
+//					GFacUtils.updateJobStatus(jobExecutionContext, jobDetails,	applicationJobStatus);
 
 					jobExecutionContext.getNotifier().publish(
 							new StatusChangeEvent(jobStatusMessage));
@@ -272,8 +272,8 @@ public class BESProvider extends AbstractProvider implements GFacProvider,
 						+ applicationJobStatus;
 				jobExecutionContext.getNotifier().publish(
 						new StatusChangeEvent(jobStatusMessage));
-				GFacUtils.updateJobStatus(jobExecutionContext, jobDetails,
-						applicationJobStatus);
+				//TODO: properly use GFacUtils..
+//				GFacUtils.updateJobStatus(jobExecutionContext, jobDetails, applicationJobStatus);
 				throw new GFacProviderException(
 						jobExecutionContext.getExperimentID() + "Job Canceled");
 			}

http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/security/UNICORESecurityContext.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/security/UNICORESecurityContext.java b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/security/UNICORESecurityContext.java
index 7285c2c..d5e2b9f 100644
--- a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/security/UNICORESecurityContext.java
+++ b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/security/UNICORESecurityContext.java
@@ -44,7 +44,7 @@ public class UNICORESecurityContext extends X509SecurityContext {
 		try{
 			X509Credential cred = getX509Credentials();
 			secProperties = new DefaultClientConfiguration(dcValidator, cred);
-//			setExtraSettings();
+			setExtraSettings();
 		}
 		catch (Exception e) {
 			throw new GFacException(e.getMessage(), e); 
@@ -103,8 +103,8 @@ public class UNICORESecurityContext extends X509SecurityContext {
 			p = new Properties();
 		}
 		
-		p.setProperty("http.connection.timeout", "300000");
-		p.setProperty("http.socket.timeout", "300000");
+		p.setProperty("http.connection.timeout", "5000");
+		p.setProperty("http.socket.timeout", "5000");
 		
 		secProperties.setExtraSettings(p);
 

http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/DataTransferrer.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/DataTransferrer.java b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/DataTransferrer.java
index f811f97..79fbae4 100644
--- a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/DataTransferrer.java
+++ b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/DataTransferrer.java
@@ -26,7 +26,9 @@ import java.io.File;
 import java.io.FileNotFoundException;
 import java.io.FileReader;
 import java.io.IOException;
+import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 import org.apache.airavata.commons.gfac.type.ActualParameter;
@@ -39,6 +41,7 @@ import org.apache.airavata.schemas.gfac.ApplicationDeploymentDescriptionType;
 import org.apache.airavata.schemas.gfac.HpcApplicationDeploymentType;
 import org.apache.airavata.schemas.gfac.StringArrayType;
 import org.apache.airavata.schemas.gfac.StringParameterType;
+import org.apache.airavata.schemas.gfac.URIArrayType;
 import org.apache.airavata.schemas.gfac.URIParameterType;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -119,7 +122,8 @@ public class DataTransferrer {
 				String localFileName = null;
 				//TODO: why analysis.tar? it wont scale to other gateways..
 				if(stringPrm == null || stringPrm.isEmpty()){
-					localFileName = "analysis-results.tar";
+					continue; 
+//					localFileName = "analysis-results.tar";
 				}else{
 					localFileName = stringPrm.substring(stringPrm.lastIndexOf("/")+1);
 				}
@@ -199,16 +203,59 @@ public class DataTransferrer {
 			throw new GFacProviderException(e.getLocalizedMessage(),e);
 		}
 		String stderrLocation = downloadLocation+File.separator+stderrFileName;
-		FileDownloader f2 = new FileDownloader(stderrFileName,stderrLocation, Mode.overwrite);
+//		FileDownloader f2 = new FileDownloader(stderrFileName,stderrLocation, Mode.overwrite);
 		try {
-			f2.perform(storageClient);
+			f1.setFrom(stderrFileName);
+			f1.setTo(stderrLocation);
+			f1.perform(storageClient);
 			String stderror = readFile(stderrLocation);
 			appDesc.setStandardError(stderror);
 		} catch (Exception e) {
 			throw new GFacProviderException(e.getLocalizedMessage(),e);
 		}
+		
+		if(UASDataStagingProcessor.isUnicoreEndpoint(jobContext)) {
+			String scriptExitCodeFName = "UNICORE_SCRIPT_EXIT_CODE";
+			f1.setFrom(scriptExitCodeFName);
+			f1.setTo(downloadLocation+File.separator+scriptExitCodeFName);
+			
+		}
+	}
+	
+	public List<String> extractOutStringParams(JobExecutionContext context) {
+		
+		Map<String, Object> outputParams = context.getOutMessageContext()
+				.getParameters();
+		
+		List<String> outPrmsList = new ArrayList<String>();
+		
+		for (String paramKey : outputParams.keySet()) {
+
+			ActualParameter outParam = (ActualParameter) outputParams
+					.get(paramKey);
+
+			String paramDataType = outParam.getType().getType().toString();
+
+			if ("String".equals(paramDataType)) {
+				String strPrm = ((StringParameterType) outParam.getType())
+						.getValue();
+				outPrmsList.add(strPrm);
+			}
+
+			else if (("StringArray").equals(paramDataType)) {
+				String[] uriArray = ((URIArrayType) outParam.getType())
+						.getValueArray();
+				for (String u : uriArray) {
+					outPrmsList.add(u);					
+				}
+
+			}
+		}
+		
+		return outPrmsList;
 	}
 
+	
 	private String readFile(String localFile) throws IOException {
 		BufferedReader instream = new BufferedReader(new FileReader(localFile));
 		StringBuffer buff = new StringBuffer();

http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/JSDLUtils.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/JSDLUtils.java b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/JSDLUtils.java
index d2474f0..e7dc672 100644
--- a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/JSDLUtils.java
+++ b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/JSDLUtils.java
@@ -122,10 +122,12 @@ public class JSDLUtils
 		SourceTargetType target = newDS.addNewTarget();
 
 		try {
-			uri = (uri == null) ? null : URIUtils.encodeAll(uri);
+			if (uri != null) { 
+				URIUtils.encodeAll(uri);
+				target.setURI(uri);
+			}
 		} catch (URIException e) {
 		}
-		target.setURI(uri);
 		newDS.setFileName(file);
 		if (fileSystem != null && !fileSystem.equals("Work")) {  //$NON-NLS-1$
 			newDS.setFilesystemName(fileSystem);

http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/UASDataStagingProcessor.java
----------------------------------------------------------------------
diff --git a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/UASDataStagingProcessor.java b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/UASDataStagingProcessor.java
index 6ab7ed0..76624cc 100644
--- a/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/UASDataStagingProcessor.java
+++ b/modules/gfac/gfac-bes/src/main/java/org/apache/airavata/gfac/bes/utils/UASDataStagingProcessor.java
@@ -22,6 +22,8 @@
 package org.apache.airavata.gfac.bes.utils;
 
 import java.io.File;
+import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 import org.apache.airavata.commons.gfac.type.ActualParameter;
@@ -48,17 +50,19 @@ public class UASDataStagingProcessor {
 		if (context.getInMessageContext().getParameters().size() > 0) {
 			buildDataStagingFromInputContext(context, value, smsUrl, appDepType);
 		}
-		MessageContext outMessage = new MessageContext();
-		ActualParameter a1 = new ActualParameter();
-		a1.getType().changeType(StringParameterType.type);
-		((StringParameterType)a1.getType()).setValue("analysis-results.tar");
-		outMessage.addParameter("o1", a1);
-		context.setOutMessageContext(outMessage);
-		
+//		MessageContext outMessage = new MessageContext();
+//		ActualParameter a1 = new ActualParameter();
+//		a1.getType().changeType(StringParameterType.type);
+//		((StringParameterType)a1.getType()).setValue("analysis-results.tar");
+//		outMessage.addParameter("o1", a1);
+//		context.setOutMessageContext(outMessage);
+		
+		// now download for string typed outputs are to be done 
 		if (context.getOutMessageContext().getParameters().size() > 0) {
 			buildFromOutputContext(context, value, smsUrl, appDepType);
 		}
-		createStdOutURIs(value, appDepType, smsUrl, isUnicoreEndpoint(context));
+		//TODO need a review for us3 gateway..
+//		createStdOutURIs(value, appDepType, smsUrl, isUnicoreEndpoint(context));
 	}
 	
 	private static void createInURISMSElement(JobDefinitionType value,
@@ -85,7 +89,16 @@ public class UASDataStagingProcessor {
 			HpcApplicationDeploymentType appDepType, String smsUrl,
 			boolean isUnicore) throws Exception {
 
+		// no need to use smsUrl for output location, because output location is activity's working directory 
 		
+		if(isUnicore) {
+			String scriptExitCodeFName = "UNICORE_SCRIPT_EXIT_CODE";
+			String scriptExitCode = smsUrl+"#/output/"+scriptExitCodeFName;
+			JSDLUtils.addDataStagingTargetElement(value, null,
+					scriptExitCodeFName, null);
+		}
+		
+		if(!isUnicore) {
 		String stdout = ApplicationProcessor.getApplicationStdOut(value, appDepType);
 		
 		String stderr = ApplicationProcessor.getApplicationStdErr(value, appDepType);
@@ -93,20 +106,16 @@ public class UASDataStagingProcessor {
 		String stdoutFileName = (stdout == null || stdout.equals("")) ? "stdout"
 				: stdout;
 		String stdoutURI = smsUrl+"#/output/"+stdoutFileName;
+		
 		JSDLUtils.addDataStagingTargetElement(value, null, stdoutFileName,
-				stdoutURI);
+				null);
 
 		String stderrFileName = (stdout == null || stderr.equals("")) ? "stderr"
 				: stderr;
 		String stderrURI = smsUrl+"#/output/"+stderrFileName;
-		JSDLUtils.addDataStagingTargetElement(value, null, stderrFileName,
-				stderrURI);
 		
-		if(isUnicore) {
-			String scriptExitCodeFName = "UNICORE_SCRIPT_EXIT_CODE";
-			String scriptExitCode = smsUrl+"#/output/"+scriptExitCodeFName;
-			JSDLUtils.addDataStagingTargetElement(value, null,
-					scriptExitCodeFName, scriptExitCode.toString());
+		JSDLUtils.addDataStagingTargetElement(value, null, stderrFileName,
+				null);
 		}
 
 	}
@@ -119,7 +128,7 @@ public class UASDataStagingProcessor {
 		
 		String finalSMSPath = smsUrl + "#/output/"+prmValue;
 		
-		JSDLUtils.addDataStagingTargetElement(value, null, prmValue,	finalSMSPath);
+		JSDLUtils.addDataStagingTargetElement(value, null, prmValue, null);
 	}
 
 	
@@ -159,22 +168,19 @@ public class UASDataStagingProcessor {
 				}
 
 			}
-			else if ("String".equals(paramDataType) || "StringArray".equals(paramDataType)) {
-				return value;
-			}
-			else if ("String".equals(paramDataType)) {
-				String stringPrm = ((StringParameterType) outParam
-						.getType()).getValue();
-				createOutStringElements(value, appDepType, smsUrl, stringPrm);
-			}
-
-			else if ("StringArray".equals(paramDataType)) {
-				String[] valueArray = ((StringArrayType) outParam.getType())
-						.getValueArray();
-				for (String v : valueArray) {
-					createOutStringElements(value, appDepType, smsUrl, v);
-				}
-			}
+//			else if ("String".equals(paramDataType)) {
+//				String stringPrm = ((StringParameterType) outParam
+//						.getType()).getValue();
+//				createOutStringElements(value, appDepType, smsUrl, stringPrm);
+//			}
+//
+//			else if ("StringArray".equals(paramDataType)) {
+//				String[] valueArray = ((StringArrayType) outParam.getType())
+//						.getValueArray();
+//				for (String v : valueArray) {
+//					createOutStringElements(value, appDepType, smsUrl, v);
+//				}
+//			}
 		}
 		
 		return value;
@@ -212,7 +218,6 @@ public class UASDataStagingProcessor {
 				ApplicationProcessor.addApplicationArgument(value, appDepType, stringPrm);
 			}
 		}
-		
 	}
 	
 	public static boolean isUnicoreEndpoint(JobExecutionContext context) {

http://git-wip-us.apache.org/repos/asf/airavata/blob/febd0c40/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
----------------------------------------------------------------------
diff --git a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
index 03ca6fc..8e9ae58 100644
--- a/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
+++ b/modules/registry/airavata-jpa-registry/src/main/java/org/apache/airavata/persistance/registry/jpa/impl/ExperimentRegistry.java
@@ -93,9 +93,10 @@ public class ExperimentRegistry {
 
             List<DataObjectType> experimentOutputs = experiment.getExperimentOutputs();
             if (experimentOutputs != null && !experimentOutputs.isEmpty()){
-                for (DataObjectType output : experimentOutputs){
-                    output.setValue("");
-                }
+            	//TODO: short change.
+//                for (DataObjectType output : experimentOutputs){
+//                    output.setValue("");
+//                }
                 addExpOutputs(experimentOutputs, experimentID);
             }
 


[2/2] airavata git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/airavata

Posted by ms...@apache.org.
Merge branch 'master' of
https://git-wip-us.apache.org/repos/asf/airavata

Conflicts:
	airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java


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

Branch: refs/heads/master
Commit: 5413e6718fd1e3fefc42858ccde98c1558414a87
Parents: febd0c4 97b384b
Author: msmemon <sh...@gmail.com>
Authored: Tue Nov 11 16:19:47 2014 +0100
Committer: msmemon <sh...@gmail.com>
Committed: Tue Nov 11 16:19:47 2014 +0100

----------------------------------------------------------------------
 airavata-api/airavata-api-server/pom.xml        |     2 +-
 .../airavata/api/server/WorkflowServer.java     |   164 -
 .../server/handler/AiravataServerHandler.java   |   436 +-
 .../server/handler/WorkflowServerHandler.java   |   158 -
 .../AiravataExperimentStatusUpdator.java        |     9 +-
 .../java/org/apache/airavata/api/Airavata.java  | 42649 +++++++++++------
 .../api/client/AiravataClientFactory.java       |    30 +-
 .../apache/airavata/api/workflow/Workflow.java  |  8191 ----
 .../api/workflow/workflowAPIConstants.java      |    56 -
 .../main/resources/lib/airavata/Airavata.cpp    | 10791 +++--
 .../src/main/resources/lib/airavata/Airavata.h  |  2733 +-
 .../lib/airavata/Airavata_server.skeleton.cpp   |    75 +-
 .../main/resources/lib/airavata/Workflow.cpp    |    36 +-
 .../src/main/resources/lib/airavata/Workflow.h  |     4 +-
 .../lib/airavata/Workflow_server.skeleton.cpp   |     2 +-
 .../resources/lib/airavata/airavataAPI_types.h  |     1 +
 .../resources/lib/Airavata/API/Airavata.php     | 11298 +++--
 .../resources/lib/Airavata/API/Workflow.php     |  1927 +
 .../client/samples/CreateLaunchExperiment.java  |    13 +-
 airavata-api/generate-thrift-files.sh           |     6 +-
 .../airavataAPI.thrift                          |  3158 +-
 .../appcatalog/cpi/ApplicationInterface.java    |     2 +
 .../appcatalog/cpi/ComputeResource.java         |    13 +-
 .../data/impl/ApplicationInterfaceImpl.java     |    16 +
 .../catalog/data/impl/ComputeResourceImpl.java  |    91 +-
 .../data/resources/AppModuleResource.java       |    28 +-
 .../data/resources/BatchQueueResource.java      |    18 +-
 .../data/resources/HostAliasResource.java       |    12 +-
 .../data/resources/HostIPAddressResource.java   |    11 +-
 .../data/util/AppCatalogThriftConversion.java   |     2 +-
 .../app/catalog/test/ComputeResourceTest.java   |    19 +-
 .../resources/schemas/GFacParameterTypes.xsd    |     2 +-
 modules/commons/utils/pom.xml                   |     6 +
 .../apache/airavata/common/utils/JSONUtil.java  |   157 +
 .../airavata/common/utils/WSConstants.java      |     3 +-
 .../main/resources/airavata-server.properties   |     4 +-
 .../impl/password/PasswordCredential.java       |     3 +-
 modules/distribution/api-server/pom.xml         |   203 +
 .../src/main/assembly/bin-assembly.xml          |   137 +
 .../src/main/assembly/src-assembly.xml          |    74 +
 .../api-server/src/main/resources/INSTALL       |    55 +
 .../api-server/src/main/resources/LICENSE       |  2387 +
 .../api-server/src/main/resources/NOTICE        |   163 +
 .../api-server/src/main/resources/README        |   121 +
 .../src/main/resources/bin/api-server.sh        |   118 +
 .../api-server/src/main/resources/bin/logo.txt  |    34 +
 .../java/src/main/assembly/bin-assembly.xml     |   280 +-
 modules/distribution/gfac-server/pom.xml        |   486 +
 .../src/main/assembly/bin-assembly.xml          |   305 +
 .../src/main/assembly/src-assembly.xml          |    75 +
 .../gfac-server/src/main/resources/INSTALL      |    55 +
 .../gfac-server/src/main/resources/LICENSE      |  2387 +
 .../gfac-server/src/main/resources/NOTICE       |   163 +
 .../gfac-server/src/main/resources/README       |   121 +
 .../src/main/resources/bin/gfac-server.sh       |   118 +
 .../gfac-server/src/main/resources/bin/logo.txt |    34 +
 .../distribution/orchestrator-server/pom.xml    |   325 +
 .../src/main/assembly/bin-assembly.xml          |   230 +
 .../src/main/assembly/src-assembly.xml          |    75 +
 .../src/main/resources/INSTALL                  |    55 +
 .../src/main/resources/LICENSE                  |  2387 +
 .../src/main/resources/NOTICE                   |   163 +
 .../src/main/resources/README                   |   121 +
 .../src/main/resources/bin/logo.txt             |    34 +
 .../main/resources/bin/orchestrator-server.sh   |   118 +
 modules/distribution/pom.xml                    |     5 +-
 modules/distribution/server/pom.xml             |    22 +-
 .../server/src/main/assembly/bin-assembly.xml   |     4 +
 .../src/main/resources/bin/airavata-server.sh   |     2 +-
 modules/gfac/airavata-gfac-service/pom.xml      |     5 +
 modules/gfac/airavata-gfac-stubs/pom.xml        |    60 +
 .../airavata/gfac/client/GFACInstance.java      |    62 +
 .../airavata/gfac/client/GFacClientFactory.java |    42 +
 .../apache/airavata/gfac/cpi/GfacService.java   |  2867 ++
 .../gfac/cpi/gfac_cpi_serviceConstants.java     |    55 +
 .../org/apache/airavata/gfac/Constants.java     |     2 -
 .../airavata/gfac/core/utils/GFacUtils.java     |     3 +-
 .../handler/GSISSHDirectorySetupHandler.java    |    30 +-
 .../gfac/gsissh/handler/GSISSHInputHandler.java |    11 +-
 .../gsissh/handler/GSISSHOutputHandler.java     |    10 +-
 .../gsissh/provider/impl/GSISSHProvider.java    |    13 +-
 .../gsissh/security/GSISecurityContext.java     |     2 -
 .../security/TokenizedMyProxyAuthInfo.java      |     2 +-
 .../gfac/gsissh/util/GFACGSISSHUtils.java       |     2 +-
 .../impl/GSISSHProviderTestWithMyProxyAuth.java |     2 +-
 .../airavata/gfac/monitor/HPCMonitorID.java     |    15 +-
 .../monitor/impl/pull/qstat/HPCPullMonitor.java |   123 +-
 .../impl/pull/qstat/ResourceConnection.java     |     9 +-
 .../airavata/gfac/monitor/util/CommonUtils.java |    15 +-
 .../ssh/handler/AdvancedSCPInputHandler.java    |    27 +-
 .../ssh/handler/AdvancedSCPOutputHandler.java   |    42 +-
 .../ssh/handler/SSHDirectorySetupHandler.java   |     6 +-
 .../gfac/ssh/handler/SSHInputHandler.java       |     9 +-
 .../gfac/ssh/handler/SSHOutputHandler.java      |     7 +-
 .../gfac/ssh/provider/impl/SSHProvider.java     |    12 +-
 .../gfac/ssh/security/SSHSecurityContext.java   |     2 -
 .../airavata/gfac/ssh/util/GFACSSHUtils.java    |   120 +-
 .../services/impl/BigRed2TestWithSSHAuth.java   |     2 +-
 .../impl/SSHProviderTestWithSSHAuth.java        |     2 +-
 modules/gfac/pom.xml                            |     1 +
 .../airavata-orchestrator-service/pom.xml       |    10 +
 .../client/OrchestratorClientFactory.java       |    45 -
 .../orchestrator/cpi/OrchestratorService.java   |  4467 --
 .../cpi/orchestrator_cpi_serviceConstants.java  |    55 -
 .../server/OrchestratorServerHandler.java       |   180 +-
 .../orchestrator/util/DataModelUtils.java       |    53 +
 .../util/OrchestratorRecoveryHandler.java       |     2 +-
 .../OrchestratorServerThreadPoolExecutor.java   |    35 +
 .../airavata-orchestrator-stubs/pom.xml         |    60 +
 .../client/OrchestratorClientFactory.java       |    44 +
 .../orchestrator/cpi/OrchestratorService.java   |  4568 ++
 .../cpi/orchestrator_cpi_serviceConstants.java  |    55 +
 .../sample/OrchestratorClientSample.java        |   134 +
 .../orchestrator-client-sdks/pom.xml            |    70 -
 .../client/sample/OrchestratorClientSample.java |   138 -
 modules/orchestrator/orchestrator-core/pom.xml  |     7 +-
 .../core/context/OrchestratorContext.java       |     3 +-
 .../orchestrator/core/gfac/GFACInstance.java    |    62 -
 .../core/gfac/GFacClientFactory.java            |    42 -
 .../core/impl/GFACEmbeddedJobSubmitter.java     |     6 +-
 .../core/impl/GFACServiceJobSubmitter.java      |     6 +-
 .../orchestrator/core/job/JobSubmitter.java     |     3 +-
 .../orchestrator/core/BaseOrchestratorTest.java |     9 -
 .../orchestrator.cpi.service.thrift             |     2 +-
 modules/orchestrator/pom.xml                    |     2 +-
 modules/workflow-model/workflow-engine/pom.xml  |     7 +-
 .../workflow/engine/WorkflowEngineImpl.java     |     5 +-
 .../engine/interpretor/WorkflowInterpreter.java |     2 +-
 .../workflow-model/workflow-model-core/pom.xml  |     6 +
 .../model/component/ws/WSComponent.java         |     6 +
 .../component/ws/WSComponentApplication.java    |    86 +-
 .../model/gpel/script/WorkflowWSDL.java         |    10 +-
 .../workflow/model/graph/ControlEdge.java       |    10 +
 .../workflow/model/graph/ControlPort.java       |    10 +-
 .../airavata/workflow/model/graph/DataEdge.java |    10 +
 .../airavata/workflow/model/graph/DataPort.java |     5 +
 .../airavata/workflow/model/graph/Graph.java    |     4 +
 .../workflow/model/graph/GraphFactory.java      |     7 +
 .../model/graph/amazon/InstanceDataPort.java    |     7 +
 .../workflow/model/graph/impl/EdgeImpl.java     |    16 +
 .../workflow/model/graph/impl/GraphImpl.java    |    66 +
 .../workflow/model/graph/impl/NodeImpl.java     |   108 +-
 .../workflow/model/graph/impl/PortImpl.java     |    28 +
 .../workflow/model/graph/system/InputNode.java  |    38 +
 .../workflow/model/graph/system/OutputNode.java |    10 +
 .../model/graph/system/ParameterNode.java       |    56 +
 .../model/graph/system/SystemDataPort.java      |    12 +
 .../workflow/model/graph/system/SystemNode.java |     5 +
 .../workflow/model/graph/ws/WSGraph.java        |   133 +-
 .../workflow/model/graph/ws/WSGraphFactory.java |   149 +-
 .../workflow/model/graph/ws/WSNode.java         |    24 +
 .../workflow/model/graph/ws/WSPort.java         |    11 +
 .../workflow/model/graph/ws/WorkflowNode.java   |    10 +
 .../airavata/workflow/model/wf/Workflow.java    |    89 +-
 modules/xbaya-gui/pom.xml                       |     7 +-
 .../airavata/xbaya/ThriftServiceType.java       |     3 +-
 .../apache/airavata/xbaya/XBayaConstants.java   |     2 +-
 .../xbaya/core/generators/WorkflowFiler.java    |    17 +-
 .../airavata/xbaya/messaging/Monitor.java       |     2 +-
 .../ui/dialogs/registry/RegistryWindow.java     |    13 +-
 .../workflow/ParameterPropertyWindow.java       |     8 +-
 .../dialogs/workflow/WorkflowImportWindow.java  |     8 +-
 .../workflow/WorkflowPropertyWindow.java        |    67 +-
 .../RegistryWorkflowPublisherWindow.java        |     8 +-
 .../WorkflowInterpreterLaunchWindow.java        |    18 +-
 .../airavata/xbaya/ui/graph/GraphCanvas.java    |    14 +-
 .../apache/airavata/xbaya/util/XBayaUtil.java   |     4 +-
 pom.xml                                         |     6 +
 168 files changed, 70801 insertions(+), 36907 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/5413e671/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
----------------------------------------------------------------------
diff --cc airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
index e0b47bb,f039988..05395e6
--- a/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
+++ b/airavata-api/airavata-client-sdks/java-client-samples/src/main/java/org/apache/airavata/client/samples/CreateLaunchExperiment.java
@@@ -55,10 -53,10 +55,11 @@@ public class CreateLaunchExperiment 
      private static final String DEFAULT_GATEWAY = "default.registry.gateway";
      private static Airavata.Client airavataClient;
  
-     private static String echoAppId = "Echo_70892623-ef16-4efb-a9f0-b12a2861e27a";
-     private static String wrfAppId = "WRF_5f097c9c-7066-49ec-aed7-4e39607b3adc";
-     private static String amberAppId = "Amber_89906be6-5678-49a6-9d04-a0604fbdef2e";
+     private static String echoAppId = "Echo_636b4530-6fb2-4c9e-998a-b41e648aa70f";
+     private static String wrfAppId = "WRF_d41bdc86-e280-4eb6-a045-708f69a8c116";
+     private static String amberAppId = "Amber_b23ee051-90d6-4892-827e-622a2f6c95ee";
+ 
 +
      private static String localHost = "localhost";
      private static String trestlesHostName = "trestles.sdsc.xsede.org";
      private static String unicoreHostName = "fsd-cloud15.zam.kfa-juelich.de";

http://git-wip-us.apache.org/repos/asf/airavata/blob/5413e671/modules/commons/gfac-schema/src/main/resources/schemas/GFacParameterTypes.xsd
----------------------------------------------------------------------
diff --cc modules/commons/gfac-schema/src/main/resources/schemas/GFacParameterTypes.xsd
index d1663d4,d1663d4..235b09c
--- a/modules/commons/gfac-schema/src/main/resources/schemas/GFacParameterTypes.xsd
+++ b/modules/commons/gfac-schema/src/main/resources/schemas/GFacParameterTypes.xsd
@@@ -63,7 -63,7 +63,7 @@@
  				<sequence>
  					<element name="value" nillable="true" type="xsd:string" />
  				</sequence>
--				<attribute name="type" fixed="StdErr" />
++				<attribute name="type" fixed="StdErr" /> 
  			</extension>
  		</complexContent>
  	</complexType>

http://git-wip-us.apache.org/repos/asf/airavata/blob/5413e671/modules/distribution/client/java/src/main/assembly/bin-assembly.xml
----------------------------------------------------------------------
diff --cc modules/distribution/client/java/src/main/assembly/bin-assembly.xml
index f89438d,f89438d..a5d9d01
--- a/modules/distribution/client/java/src/main/assembly/bin-assembly.xml
+++ b/modules/distribution/client/java/src/main/assembly/bin-assembly.xml
@@@ -1,10 -1,10 +1,13 @@@
--<!--Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file 
--    distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under 
--    the Apache License, Version 2.0 (theÏ "License"); you may not use this file except in compliance with the License. You may 
--    obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to 
--    in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF 
--    ANY ~ KIND, either express or implied. See the License for the specific language governing permissions and limitations under 
--    the License. -->
++<!--Licensed to the Apache Software Foundation (ASF) under one or more contributor 
++	license agreements. See the NOTICE file distributed with this work for additional 
++	information regarding copyright ownership. The ASF licenses this file to 
++	you under the Apache License, Version 2.0 (theÏ "License"); you may not use 
++	this file except in compliance with the License. You may obtain a copy of 
++	the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
++	by applicable law or agreed to in writing, software distributed under the 
++	License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
++	OF ANY ~ KIND, either express or implied. See the License for the specific 
++	language governing permissions and limitations under the License. -->
  	
  <!DOCTYPE assembly [
          <!ELEMENT assembly (id|includeBaseDirectory|baseDirectory|formats|fileSets|dependencySets)*>
@@@ -23,136 -23,136 +26,141 @@@
          <!ELEMENT dependencySet (outputDirectory|includes)*>
          ]>
  <assembly>
--    <id>bin</id>
--    <includeBaseDirectory>true</includeBaseDirectory>
--    <baseDirectory>${archieve.name}-${version}</baseDirectory>
--    <formats>
--        <format>tar.gz</format>
--        <format>zip</format>
--    </formats>
--    <fileSets>
--        <!-- ********************** copy release notes files ********************** -->
--        <fileSet>
--            <directory>../../../</directory>
--            <outputDirectory>.</outputDirectory>
--            <includes>
--                <include>RELEASE_NOTES</include>
--            </includes>
--        </fileSet>
--        <!-- ********************** copy licenses, readme etc. ********************** -->
--        <fileSet>
--            <directory>src/main/resources/</directory>
--            <outputDirectory>.</outputDirectory>
--            <includes>
--                <include>conf/*</include>
--                <include>LICENSE</include>
--                <include>NOTICE</include>
--                <include>README</include>
--                <include>INSTALL</include>
--            </includes>
--        </fileSet>
--	<fileSet>
--            <directory>${project.build.directory}/conf</directory>
--            <outputDirectory>conf</outputDirectory>
--	    <includes>
--                <include>*.properties</include>
--            </includes>
--        </fileSet>
--        <fileSet>
--            <directory>../../../../samples/java-client</directory>
--            <outputDirectory>samples</outputDirectory>
--            <excludes>
--                <exclude>**/*.iml</exclude>
--                <exclude>**/pom.xml</exclude>
--                <exclude>**/target/**</exclude>
--            </excludes>
++	<id>bin</id>
++	<includeBaseDirectory>true</includeBaseDirectory>
++	<baseDirectory>${archieve.name}-${version}</baseDirectory>
++	<formats>
++		<format>tar.gz</format>
++		<format>zip</format>
++	</formats>
++	<fileSets>
++		<!-- ********************** copy release notes files ********************** -->
++		<fileSet>
++			<directory>../../../</directory>
++			<outputDirectory>.</outputDirectory>
++			<includes>
++				<include>RELEASE_NOTES</include>
++			</includes>
++		</fileSet>
++		<!-- ********************** copy licenses, readme etc. ********************** -->
++		<fileSet>
++			<directory>src/main/resources/</directory>
++			<outputDirectory>.</outputDirectory>
++			<includes>
++				<include>conf/*</include>
++				<include>LICENSE</include>
++				<include>NOTICE</include>
++				<include>README</include>
++				<include>INSTALL</include>
++			</includes>
++		</fileSet>
++		<fileSet>
++			<directory>${project.build.directory}/conf</directory>
++			<outputDirectory>conf</outputDirectory>
++			<includes>
++				<include>*.properties</include>
++			</includes>
++		</fileSet>
++		<fileSet>
++			<directory>../../../../samples/java-client</directory>
++			<outputDirectory>samples</outputDirectory>
++			<excludes>
++				<exclude>**/*.iml</exclude>
++				<exclude>**/pom.xml</exclude>
++				<exclude>**/target/**</exclude>
++			</excludes>
  
--        </fileSet>
--    </fileSets>
++		</fileSet>
++	</fileSets>
  
--    <dependencySets>
--        <dependencySet>
--            <outputDirectory>lib</outputDirectory>
--            <outputFileNameMapping>${artifact.artifactId}.${artifact.extension}</outputFileNameMapping>
--            <includes>
--                <include>org.apache.derby:derby:jar</include>
--                <include>org.apache.derby:derbytools:jar</include>
--                <include>org.apache.derby:derbynet:jar</include>
--                <include>org.apache.derby:derbyclient:jar</include>
--            </includes>
--        </dependencySet>
--        <dependencySet>
--            <outputDirectory>lib</outputDirectory>
--            <includes>
--                <include>org.slf4j:slf4j-api:jar</include>
--                <include>org.slf4j:slf4j-jcl:jar</include>
--                <include>org.slf4j:slf4j-log4j12:jar</include>
--                <include>javax.jcr:jcr:jar</include>
--                <include>commons-collections:commons-collections</include>
--                <include>commons-configuration:commons-configuration</include>
--                <include>commons-lang:commons-lang</include>
--                <include>org.ogce:xpp3:jar</include>
--                <include>org.ogce:xpp5:jar</include>
--                <include>org.ogce:xsul:jar</include>
--                <include>org.ogce:xsul5:jar</include>
--                <include>org.ogce:gpel-client:jar</include>
--                <include>org.ogce:atomixmiser:jar</include>
--                <include>org.python:jython:jar</include>
--                <include>org.apache.xmlbeans:xmlbeans</include>
--                <!--<include>com.amazonaws:aws-java-sdk</include> -->
--                <!--<include>amazon:MapReduce.Service.Client</include> -->
--                <include>net.java.dev.jets3t:jets3t</include>
--		<include>org.apache.airavata:airavata-orchestrator-core:jar</include>
--		<include>org.apache.airavata:airavata-gfac-schema-utils:jar</include>
--		<include>org.apache.airavata:airavata-common-utils:jar</include>
--		<include>org.apache.airavata:airavata-workflow-execution-context:jar</include>
--		<include>org.apache.airavata:airavata-registry-cpi:jar</include>
--		<include>org.apache.airavata:airavata-jpa-registry:jar</include>
--		<include>org.apache.airavata:airavata-data-models:jar</include>
--		<include>org.apache.airavata:airavata-api-stubs:jar</include>
--		<include>org.apache.airavata:airavata-credential-store:jar</include>
--		<include>org.apache.airavata:airavata-gfac-core:jar</include>
--		<include>commons-cli:commons-cli:jar</include>
--		<!--include>org.apache.airavata:airavata-message-monitor:jar</include>
--		<include>org.apache.airavata:airavata-workflow-model-core:jar</include>
--		<include>org.apache.airavata:airavata-messenger-commons:jar</include>
--		<include>org.apache.airavata:airavata-messenger-client:jar</include-->
--		<include>org.apache.airavata:airavata-workflow-tracking:jar</include>
--		<include>org.apache.airavata:gsissh:jar</include>
--		<include>org.apache.airavata:airavata-model-utils:jar</include>
--		<include>org.apache.airavata:airavata-orchestrator-service:jar</include>
--                <include>org.apache.openjpa:openjpa-all:jar</include>
--                <include>xerces:xercesImpl:jar:2.9.1</include>
--                <include>com.sun.jersey:jersey-json</include>
--                <include>com.sun.jersey.contribs:jersey-multipart</include>
--                <include>org.codehaus.jackson:jackson-jaxrs</include>
--                <include>org.codehaus.jackson:jackson-core-asl</include>
--                <include>org.codehaus.jackson:jackson-mapper-asl</include>
--                <include>org.codehaus.jackson:jackson-xc</include>
--                <include>com.sun.jersey:jersey-core:jar</include>
--                <include>com.sun.jersey:jersey-client:jar</include>
--                <include>org.apache.airavata:json</include>
--                <include>commons-codec:commons-codec:jar</include>
--                <include>wsdl4j:wsdl4j:jar</include>
--                <include>org.apache.axis2:axis2-kernel:jar</include>
--                <include>commons-httpclient:commons-httpclient:jar</include>
--                <include>org.apache.ws.commons.axiom:axiom-api:jar</include>
--                <include>org.apache.axis2:axis2:jar</include>
--                <include>org.apache.ws.commons.schema:XmlSchema:jar</include>
--                <include>org.apache.ws.commons.axiom:axiom-impl:jar</include>
--                <include>org.apache.neethi:neethi:jar</include>
--                <include>org.apache.axis2:axis2-transport-local:jar</include>
--                <include>org.apache.axis2:axis2-transport-http:jar</include>
--                <include>javax.mail:mail:jar</include>
--                <include>org.apache.woden:woden-api:jar</include>
--                <include>org.apache.httpcomponents:httpcore:jar</include>
--                <include>org.apache.axis2:axis2-adb:jar</include>
--                <include>log4j:log4j:jar</include>
--                <include>de.odysseus.staxon:staxon:jar:1.2</include>
--                <include>de.odysseus.staxon:staxon-jackson:jar:1.2</include>
--                <include>org.apache.thrift:libthrift:jar:0.9.1</include>
--            </includes>
--        </dependencySet>
--    </dependencySets>
++	<dependencySets>
++		<dependencySet>
++			<outputDirectory>lib</outputDirectory>
++			<outputFileNameMapping>${artifact.artifactId}.${artifact.extension}
++			</outputFileNameMapping>
++			<includes>
++				<include>org.apache.derby:derby:jar</include>
++				<include>org.apache.derby:derbytools:jar</include>
++				<include>org.apache.derby:derbynet:jar</include>
++				<include>org.apache.derby:derbyclient:jar</include>
++			</includes>
++		</dependencySet>
++		<dependencySet>
++			<outputDirectory>lib</outputDirectory>
++			<includes>
++				<include>org.slf4j:slf4j-api:jar</include>
++				<include>org.slf4j:slf4j-jcl:jar</include>
++				<include>org.slf4j:slf4j-log4j12:jar</include>
++				<include>javax.jcr:jcr:jar</include>
++				<include>commons-collections:commons-collections</include>
++				<include>commons-configuration:commons-configuration</include>
++				<include>commons-lang:commons-lang</include>
++				<include>org.ogce:xpp3:jar</include>
++				<include>org.ogce:xpp5:jar</include>
++				<include>org.ogce:xsul:jar</include>
++				<include>org.ogce:xsul5:jar</include>
++				<include>org.ogce:gpel-client:jar</include>
++				<include>org.ogce:atomixmiser:jar</include>
++				<include>org.python:jython:jar</include>
++				<include>org.apache.xmlbeans:xmlbeans</include>
++				<!--<include>com.amazonaws:aws-java-sdk</include> -->
++				<!--<include>amazon:MapReduce.Service.Client</include> -->
++				<include>net.java.dev.jets3t:jets3t</include>
++				<include>org.apache.airavata:airavata-orchestrator-core:jar
++				</include>
++				<include>org.apache.airavata:airavata-gfac-schema-utils:jar
++				</include>
++				<include>org.apache.airavata:airavata-common-utils:jar</include>
++				<include>org.apache.airavata:airavata-workflow-execution-context:jar
++				</include>
++				<include>org.apache.airavata:airavata-registry-cpi:jar</include>
++				<include>org.apache.airavata:airavata-jpa-registry:jar</include>
++				<include>org.apache.airavata:airavata-data-models:jar</include>
++				<include>org.apache.airavata:airavata-api-stubs:jar</include>
++				<include>org.apache.airavata:airavata-credential-store:jar</include>
++				<include>org.apache.airavata:airavata-gfac-core:jar</include>
++				<include>commons-cli:commons-cli:jar</include>
++				<!--include>org.apache.airavata:airavata-message-monitor:jar</include> 
++					<include>org.apache.airavata:airavata-workflow-model-core:jar</include> <include>org.apache.airavata:airavata-messenger-commons:jar</include> 
++					<include>org.apache.airavata:airavata-messenger-client:jar</include -->
++				<include>org.apache.airavata:airavata-workflow-tracking:jar
++				</include>
++				<include>org.apache.airavata:gsissh:jar</include>
++				<include>org.apache.airavata:airavata-model-utils:jar</include>
++				<include>org.apache.airavata:airavata-orchestrator-service:jar
++				</include>
++				<include>org.apache.openjpa:openjpa-all:jar</include>
++				<include>xerces:xercesImpl:jar:2.9.1</include>
++				<include>com.sun.jersey:jersey-json</include>
++				<include>com.sun.jersey.contribs:jersey-multipart</include>
++				<include>org.codehaus.jackson:jackson-jaxrs</include>
++				<include>org.codehaus.jackson:jackson-core-asl</include>
++				<include>org.codehaus.jackson:jackson-mapper-asl</include>
++				<include>org.codehaus.jackson:jackson-xc</include>
++				<include>com.sun.jersey:jersey-core:jar</include>
++				<include>com.sun.jersey:jersey-client:jar</include>
++				<include>org.apache.airavata:json</include>
++				<include>commons-codec:commons-codec:jar</include>
++				<include>wsdl4j:wsdl4j:jar</include>
++				<include>org.apache.axis2:axis2-kernel:jar</include>
++				<include>commons-httpclient:commons-httpclient:jar</include>
++				<include>org.apache.ws.commons.axiom:axiom-api:jar</include>
++				<include>org.apache.axis2:axis2:jar</include>
++				<include>org.apache.ws.commons.schema:XmlSchema:jar</include>
++				<include>org.apache.ws.commons.axiom:axiom-impl:jar</include>
++				<include>org.apache.neethi:neethi:jar</include>
++				<include>org.apache.axis2:axis2-transport-local:jar</include>
++				<include>org.apache.axis2:axis2-transport-http:jar</include>
++				<include>javax.mail:mail:jar</include>
++				<include>org.apache.woden:woden-api:jar</include>
++				<include>org.apache.httpcomponents:httpcore:jar</include>
++				<include>org.apache.axis2:axis2-adb:jar</include>
++				<include>log4j:log4j:jar</include>
++				<include>de.odysseus.staxon:staxon:jar:1.2</include>
++				<include>de.odysseus.staxon:staxon-jackson:jar:1.2</include>
++				<include>org.apache.thrift:libthrift:jar:0.9.1</include>
++			</includes>
++		</dependencySet>
++	</dependencySets>
  
  </assembly>

http://git-wip-us.apache.org/repos/asf/airavata/blob/5413e671/modules/distribution/server/src/main/assembly/bin-assembly.xml
----------------------------------------------------------------------