You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sa...@apache.org on 2014/07/09 16:47:45 UTC
git commit: adding bigred doc add function
Repository: airavata
Updated Branches:
refs/heads/master 7661ac601 -> 36393ace3
adding bigred doc add function
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/36393ace
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/36393ace
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/36393ace
Branch: refs/heads/master
Commit: 36393ace37881474c213c05a8f84e488e191ec45
Parents: 7661ac6
Author: Saminda Wijeratne <sa...@gmail.com>
Authored: Wed Jul 9 10:41:58 2014 -0400
Committer: Saminda Wijeratne <sa...@gmail.com>
Committed: Wed Jul 9 10:41:58 2014 -0400
----------------------------------------------------------------------
.../client/tools/DocumentCreatorNew.java | 66 ++++++++++++++++++++
1 file changed, 66 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/36393ace/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java
----------------------------------------------------------------------
diff --git a/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java
index 7775dbf..2913397 100644
--- a/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java
+++ b/modules/airavata-client/src/main/java/org/apache/airavata/client/tools/DocumentCreatorNew.java
@@ -20,19 +20,31 @@
*/
package org.apache.airavata.client.tools;
+import java.io.File;
+import java.util.ArrayList;
import java.util.Arrays;
+import java.util.Date;
+import java.util.HashMap;
import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
import org.airavata.appcatalog.cpi.AppCatalog;
import org.airavata.appcatalog.cpi.AppCatalogException;
import org.apache.airavata.api.Airavata;
+import org.apache.airavata.client.api.exception.AiravataAPIInvocationException;
import org.apache.airavata.common.utils.ClientSettings;
+import org.apache.airavata.commons.gfac.type.ApplicationDescription;
+import org.apache.airavata.commons.gfac.type.HostDescription;
+import org.apache.airavata.commons.gfac.type.ServiceDescription;
import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
import org.apache.airavata.model.appcatalog.appdeployment.ApplicationModule;
import org.apache.airavata.model.appcatalog.appdeployment.ApplicationParallelismType;
import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription;
import org.apache.airavata.model.appcatalog.appinterface.DataType;
import org.apache.airavata.model.appcatalog.computeresource.ComputeResourceDescription;
+import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand;
import org.apache.airavata.model.appcatalog.computeresource.LOCALDataMovement;
import org.apache.airavata.model.appcatalog.computeresource.LOCALSubmission;
import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManager;
@@ -45,6 +57,13 @@ import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfil
import org.apache.airavata.model.error.AiravataClientException;
import org.apache.airavata.model.error.AiravataSystemException;
import org.apache.airavata.model.error.InvalidRequestException;
+import org.apache.airavata.schemas.gfac.ApplicationDeploymentDescriptionType;
+import org.apache.airavata.schemas.gfac.HpcApplicationDeploymentType;
+import org.apache.airavata.schemas.gfac.InputParameterType;
+import org.apache.airavata.schemas.gfac.JobTypeType;
+import org.apache.airavata.schemas.gfac.OutputParameterType;
+import org.apache.airavata.schemas.gfac.SSHHostType;
+import org.apache.airavata.schemas.gfac.StringParameterType;
import org.apache.thrift.TException;
public class DocumentCreatorNew {
@@ -55,6 +74,8 @@ public class DocumentCreatorNew {
private String stampedeHostAddress = "stampede.tacc.xsede.org";
private String gridftpAddress = "gsiftp://trestles-dm1.sdsc.edu:2811";
private String gramAddress = "trestles-login1.sdsc.edu:2119/jobmanager-pbstest2";
+ private String bigRed2HostAddress = "bigred2.uits.iu.edu";
+
private Airavata.Client client;
private GatewayResourceProfile gatewayResourceProfile;
@@ -576,6 +597,51 @@ public class DocumentCreatorNew {
//
// }
+ public String createBigRedDocs() throws InvalidRequestException, AiravataClientException, AiravataSystemException, TException, AppCatalogException {
+ ComputeResourceDescription host = DocumentCreatorUtils.createComputeResourceDescription("bigred2", null, null);
+ host.addToHostAliases(bigRed2HostAddress);
+ host.addToIpAddresses(bigRed2HostAddress);
+ host.setComputeResourceId(client.registerComputeResource(host));
+
+
+ Map<JobManagerCommand, String> commands = new HashMap<JobManagerCommand, String>();
+ commands.put(JobManagerCommand.SUBMISSION, "aprun -n 1");
+ ResourceJobManager resourceJobManager = DocumentCreatorUtils.createResourceJobManager(ResourceJobManagerType.UGE, "/opt/torque/torque-4.2.3.1/bin/", commands , null);
+ SSHJobSubmission sshJobSubmission = new SSHJobSubmission();
+ sshJobSubmission.setResourceJobManager(resourceJobManager);
+ sshJobSubmission.setSecurityProtocol(SecurityProtocol.SSH_KEYS);
+ sshJobSubmission.setSshPort(22);
+
+ client.addSSHJobSubmissionDetails(host.getComputeResourceId(), 1, sshJobSubmission);
+
+ SCPDataMovement scpDataMovement = new SCPDataMovement();
+ scpDataMovement.setSecurityProtocol(SecurityProtocol.SSH_KEYS);
+ scpDataMovement.setSshPort(22);
+ client.addSCPDataMovementDetails(host.getComputeResourceId(), 1, scpDataMovement);
+
+ ApplicationModule module = DocumentCreatorUtils.createApplicationModule("echo", "1.5", null);
+ module.setAppModuleId(client.registerApplicationModule(module));
+
+ ApplicationInterfaceDescription application = new ApplicationInterfaceDescription();
+ application.setApplicationName("SimpleEchoBR");
+ application.addToApplicationModules(module.getAppModuleId());
+ application.addToApplicationInputs(DocumentCreatorUtils.createAppInput("echo_input", "echo_input", null, null, DataType.STRING));
+ application.addToApplicationOutputs(DocumentCreatorUtils.createAppOutput("echo_output", null, DataType.STRING));
+ application.setApplicationInterfaceId(client.registerApplicationInterface(application));
+
+ ApplicationDeploymentDescription deployment = DocumentCreatorUtils.createApplicationDeployment(host.getComputeResourceId(), module.getAppModuleId(), "/bin/echo", ApplicationParallelismType.SERIAL, "EchoLocal");
+ deployment.setAppDeploymentId(client.registerApplicationDeployment(deployment));
+
+ String date = (new Date()).toString();
+ date = date.replaceAll(" ", "_");
+ date = date.replaceAll(":", "_");
+ String tempDir = "/tmp";
+ tempDir = tempDir + File.separator + "SimpleEcho" + "_" + date + "_" + UUID.randomUUID();
+
+ client.addGatewayComputeResourcePreference(getGatewayResourceProfile().getGatewayID(), host.getComputeResourceId(), DocumentCreatorUtils.createComputeResourcePreference(host.getComputeResourceId(), tempDir, "TG-STA110014S", false, null, null, null));
+ return host.getComputeResourceId()+","+application.getApplicationInterfaceId();
+ }
+
}