Repository: airavata Updated Branches: refs/heads/master 64b7842f0 -> 9534a8104
http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java index 6a7507b..92bef4a 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/ProcessTerminateEvent.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class ProcessTerminateEvent implements org.apache.thrift.TBase<ProcessTerminateEvent, ProcessTerminateEvent._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessTerminateEvent> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessTerminateEvent"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java index 89048a6..a16c84c 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskIdentifier.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class TaskIdentifier implements org.apache.thrift.TBase<TaskIdentifier, TaskIdentifier._Fields>, java.io.Serializable, Cloneable, Comparable<TaskIdentifier> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskIdentifier"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java index 8ab6625..d4c2ab0 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskOutputChangeEvent.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class TaskOutputChangeEvent implements org.apache.thrift.TBase<TaskOutputChangeEvent, TaskOutputChangeEvent._Fields>, java.io.Serializable, Cloneable, Comparable<TaskOutputChangeEvent> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskOutputChangeEvent"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java index 864f11d..0a327de 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeEvent.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class TaskStatusChangeEvent implements org.apache.thrift.TBase<TaskStatusChangeEvent, TaskStatusChangeEvent._Fields>, java.io.Serializable, Cloneable, Comparable<TaskStatusChangeEvent> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskStatusChangeEvent"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java index 1b4c154..0c03d19 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/messaging/event/TaskStatusChangeRequestEvent.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class TaskStatusChangeRequestEvent implements org.apache.thrift.TBase<TaskStatusChangeRequestEvent, TaskStatusChangeRequestEvent._Fields>, java.io.Serializable, Cloneable, Comparable<TaskStatusChangeRequestEvent> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskStatusChangeRequestEvent"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java index c3a24bd..66d00d2 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/process/ProcessModel.java @@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory; * * */ -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class ProcessModel implements org.apache.thrift.TBase<ProcessModel, ProcessModel._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessModel> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessModel"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java index 2c66fee..c45010d 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/scheduling/ComputationalResourceSchedulingModel.java @@ -56,7 +56,7 @@ import org.slf4j.LoggerFactory; * * */ -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class ComputationalResourceSchedulingModel implements org.apache.thrift.TBase<ComputationalResourceSchedulingModel, ComputationalResourceSchedulingModel._Fields>, java.io.Serializable, Cloneable, Comparable<ComputationalResourceSchedulingModel> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ComputationalResourceSchedulingModel"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java index 19e6f0b..a9a68e7 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/security/AuthzToken.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class AuthzToken implements org.apache.thrift.TBase<AuthzToken, AuthzToken._Fields>, java.io.Serializable, Cloneable, Comparable<AuthzToken> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("AuthzToken"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java index 8a11c75..ab9dc5f 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ExperimentStatus.java @@ -64,7 +64,7 @@ import org.slf4j.LoggerFactory; * User friendly reason on how the state is inferred. * */ -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class ExperimentStatus implements org.apache.thrift.TBase<ExperimentStatus, ExperimentStatus._Fields>, java.io.Serializable, Cloneable, Comparable<ExperimentStatus> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ExperimentStatus"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java index b4a9074..3920678 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/JobStatus.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class JobStatus implements org.apache.thrift.TBase<JobStatus, JobStatus._Fields>, java.io.Serializable, Cloneable, Comparable<JobStatus> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("JobStatus"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java index d8c8e0a..dff8c65 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/ProcessStatus.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class ProcessStatus implements org.apache.thrift.TBase<ProcessStatus, ProcessStatus._Fields>, java.io.Serializable, Cloneable, Comparable<ProcessStatus> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ProcessStatus"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java index ff92cdb..a8da74c 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/status/TaskStatus.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class TaskStatus implements org.apache.thrift.TBase<TaskStatus, TaskStatus._Fields>, java.io.Serializable, Cloneable, Comparable<TaskStatus> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskStatus"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java index 7f597b4..23dcf44 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/DataStagingTaskModel.java @@ -58,7 +58,7 @@ import org.slf4j.LoggerFactory; * A friendly description of the task, usally used to communicate information to users. * */ -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class DataStagingTaskModel implements org.apache.thrift.TBase<DataStagingTaskModel, DataStagingTaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<DataStagingTaskModel> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("DataStagingTaskModel"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java index ddefe37..381c048 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/task/TaskModel.java @@ -60,7 +60,7 @@ import org.slf4j.LoggerFactory; * subTaskModel: * A generic byte object for the Task developer to store internal serialized data into registry catalogs. */ -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class TaskModel implements org.apache.thrift.TBase<TaskModel, TaskModel._Fields>, java.io.Serializable, Cloneable, Comparable<TaskModel> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("TaskModel"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java index f6907ca..e7af254 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Gateway.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class Gateway implements org.apache.thrift.TBase<Gateway, Gateway._Fields>, java.io.Serializable, Cloneable, Comparable<Gateway> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Gateway"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java index 2967b5a..539da77 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Group.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class Group implements org.apache.thrift.TBase<Group, Group._Fields>, java.io.Serializable, Cloneable, Comparable<Group> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Group"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java index d3bc54e..08058bd 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class Project implements org.apache.thrift.TBase<Project, Project._Fields>, java.io.Serializable, Cloneable, Comparable<Project> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Project"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java index 1166269..2bbdc30 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-25") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-8-27") public class User implements org.apache.thrift.TBase<User, User._Fields>, java.io.Serializable, Cloneable, Comparable<User> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("User"); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/configuration/server/src/main/resources/gfac-config.yaml ---------------------------------------------------------------------- diff --git a/modules/configuration/server/src/main/resources/gfac-config.yaml b/modules/configuration/server/src/main/resources/gfac-config.yaml index 5a3ebe7..5fd859e 100644 --- a/modules/configuration/server/src/main/resources/gfac-config.yaml +++ b/modules/configuration/server/src/main/resources/gfac-config.yaml @@ -28,6 +28,9 @@ jobSubmitters: # publicKeyPath: /path/to/the/publickey # hostName: remote.client.hostName + - submissionProtocol: SSH_FORK + taskClass: org.apache.airavata.gfac.impl.task.SSHForkJobSubmissionTask + - submissionProtocol: LOCAL taskClass: org.apache.airavata.gfac.impl.task.LocalJobSubmissionTask @@ -100,4 +103,6 @@ resources: resourceEmailAddresses: - iu.xsede.edu # test resource mail address + - jobManagerType: FORK + commandOutputParser: org.apache.airavata.gfac.impl.job.ForkOutputParser http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java index d313ac0..cbc0c0b 100644 --- a/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java +++ b/modules/gfac/gfac-core/src/main/java/org/apache/airavata/gfac/core/GFacUtils.java @@ -970,7 +970,7 @@ public class GFacUtils { try { JobSubmissionProtocol submissionProtocol = getPreferredJobSubmissionProtocol(processContext); JobSubmissionInterface jobSubmissionInterface = getPreferredJobSubmissionInterface(processContext); - if (submissionProtocol == JobSubmissionProtocol.SSH) { + if (submissionProtocol == JobSubmissionProtocol.SSH ) { SSHJobSubmission sshJobSubmission = GFacUtils.getSSHJobSubmission(jobSubmissionInterface.getJobSubmissionInterfaceId()); if (sshJobSubmission != null) { return sshJobSubmission.getResourceJobManager(); @@ -980,6 +980,11 @@ public class GFacUtils { if (localJobSubmission != null) { return localJobSubmission.getResourceJobManager(); } + } else if (submissionProtocol == JobSubmissionProtocol.SSH_FORK){ + SSHJobSubmission sshJobSubmission = GFacUtils.getSSHJobSubmission(jobSubmissionInterface.getJobSubmissionInterfaceId()); + if (sshJobSubmission != null) { + return sshJobSubmission.getResourceJobManager(); + } } } catch (AppCatalogException e) { log.error("Error occured while retrieving resource job manager", e); @@ -1059,7 +1064,7 @@ public class GFacUtils { Source xslt = new StreamSource(new File(resource.getPath())); Transformer transformer; StringWriter results = new StringWriter(); - File tempPBSFile = null; + File tempJobFile = null; // generate the pbs script using xslt transformer = factory.newTransformer(xslt); Source text = new StreamSource(new ByteArrayInputStream(jobDescriptor.toXML().getBytes())); @@ -1071,9 +1076,9 @@ public class GFacUtils { // creating a temporary file using pbs script generated above int number = new SecureRandom().nextInt(); number = (number < 0 ? -number : number); - tempPBSFile = new File(Integer.toString(number) + jobManagerConfiguration.getScriptExtension()); - FileUtils.writeStringToFile(tempPBSFile, scriptContent); - return tempPBSFile; + tempJobFile = new File(Integer.toString(number) + jobManagerConfiguration.getScriptExtension()); + FileUtils.writeStringToFile(tempJobFile, scriptContent); + return tempJobFile; } catch (IOException e) { throw new GFacException("Error occurred while creating the temp job script file", e); } catch (TransformerConfigurationException e) { http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/Factory.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/Factory.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/Factory.java index cec9277..9665d90 100644 --- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/Factory.java +++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/Factory.java @@ -46,10 +46,7 @@ import org.apache.airavata.gfac.core.task.JobSubmissionTask; import org.apache.airavata.gfac.core.task.Task; import org.apache.airavata.gfac.core.watcher.CancelRequestWatcher; import org.apache.airavata.gfac.core.watcher.RedeliveryRequestWatcher; -import org.apache.airavata.gfac.impl.job.LSFJobConfiguration; -import org.apache.airavata.gfac.impl.job.PBSJobConfiguration; -import org.apache.airavata.gfac.impl.job.SlurmJobConfiguration; -import org.apache.airavata.gfac.impl.job.UGEJobConfiguration; +import org.apache.airavata.gfac.impl.job.*; import org.apache.airavata.gfac.impl.watcher.CancelRequestWatcherImpl; import org.apache.airavata.gfac.impl.watcher.RedeliveryRequestWatcherImpl; import org.apache.airavata.gfac.monitor.email.EmailBasedMonitor; @@ -180,6 +177,9 @@ public abstract class Factory { case UGE: return new UGEJobConfiguration("UGETemplate.xslt", ".pbs", resourceJobManager.getJobManagerBinPath(), resourceJobManager.getJobManagerCommands(), outputParser); + case FORK: + return new ForkJobConfiguration("ForkTemplate.xslt", ".sh", resourceJobManager.getJobManagerBinPath(), + resourceJobManager.getJobManagerCommands(), outputParser); default: return null; } http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/job/ForkJobConfiguration.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/job/ForkJobConfiguration.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/job/ForkJobConfiguration.java new file mode 100644 index 0000000..d53ce45 --- /dev/null +++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/job/ForkJobConfiguration.java @@ -0,0 +1,114 @@ +/* + * + * 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. + * +*/ + +package org.apache.airavata.gfac.impl.job; + +import org.apache.airavata.gfac.core.JobManagerConfiguration; +import org.apache.airavata.gfac.core.cluster.OutputParser; +import org.apache.airavata.gfac.core.cluster.RawCommandInfo; +import org.apache.airavata.model.appcatalog.computeresource.JobManagerCommand; +import org.apache.commons.io.FilenameUtils; + +import java.io.File; +import java.util.Map; + +public class ForkJobConfiguration implements JobManagerConfiguration { + private final Map<JobManagerCommand, String> jobManagerCommands; + private String jobDescriptionTemplateName; + private String scriptExtension; + private String installedPath; + private OutputParser parser; + + public ForkJobConfiguration (String jobDescriptionTemplateName, String scriptExtension, String installedPath, + Map<JobManagerCommand, String> jobManagerCommands, OutputParser parser){ + this.jobDescriptionTemplateName = jobDescriptionTemplateName; + this.scriptExtension = scriptExtension; + this.parser = parser; + if (installedPath.endsWith("/")) { + this.installedPath = installedPath; + } else { + this.installedPath = installedPath + "/"; + } + this.jobManagerCommands = jobManagerCommands; + } + + @Override + public RawCommandInfo getCancelCommand(String jobID) { + return new RawCommandInfo(this.installedPath + jobManagerCommands.get(JobManagerCommand.DELETION) + " " + + jobID); + } + + @Override + public String getJobDescriptionTemplateName() { + return jobDescriptionTemplateName; + } + + @Override + public RawCommandInfo getMonitorCommand(String jobID) { + return null; + } + + @Override + public RawCommandInfo getUserBasedMonitorCommand(String userName) { + return null; + } + + @Override + public RawCommandInfo getJobIdMonitorCommand(String jobName, String userName) { + return null; + } + + @Override + public String getScriptExtension() { + return scriptExtension; + } + + @Override + public RawCommandInfo getSubmitCommand(String workingDirectory, String forkFilePath) { + return new RawCommandInfo(this.installedPath + jobManagerCommands.get(JobManagerCommand.SUBMISSION) + " " + + workingDirectory + File.separator + FilenameUtils.getName(forkFilePath)); + } + + @Override + public OutputParser getParser() { + return parser; + } + + @Override + public String getInstalledPath() { + return installedPath; + } + + @Override + public String getBaseCancelCommand() { + return null; + } + + @Override + public String getBaseMonitorCommand() { + return null; + } + + @Override + public String getBaseSubmitCommand() { + return null; + } +} http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/job/ForkOutputParser.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/job/ForkOutputParser.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/job/ForkOutputParser.java new file mode 100644 index 0000000..51b8e8a --- /dev/null +++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/job/ForkOutputParser.java @@ -0,0 +1,61 @@ +/* + * + * 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. + * +*/ + +package org.apache.airavata.gfac.impl.job; + +import org.apache.airavata.common.utils.AiravataUtils; +import org.apache.airavata.gfac.core.JobDescriptor; +import org.apache.airavata.gfac.core.SSHApiException; +import org.apache.airavata.gfac.core.cluster.OutputParser; +import org.apache.airavata.model.status.JobStatus; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.Map; + +public class ForkOutputParser implements OutputParser { + private static final Logger log = LoggerFactory.getLogger(ForkOutputParser.class); + @Override + public void parseSingleJob(JobDescriptor descriptor, String rawOutput) throws SSHApiException { + log.info(rawOutput); + } + + @Override + public String parseJobSubmission(String rawOutput) throws SSHApiException { + return null; + } + + @Override + public JobStatus parseJobStatus(String jobID, String rawOutput) throws SSHApiException { + return null; + } + + @Override + public void parseJobStatuses(String userName, Map<String, JobStatus> statusMap, String rawOutput) throws SSHApiException { + + } + + @Override + public String parseJobId(String jobName, String rawOutput) throws SSHApiException { + // For fork jobs there is no job ID, hence airavata generates a job ID + return AiravataUtils.getId(jobName); + } +} http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/AdvancedSCPDataStageTask.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/AdvancedSCPDataStageTask.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/AdvancedSCPDataStageTask.java index 9210c93..2a0c54c 100644 --- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/AdvancedSCPDataStageTask.java +++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/AdvancedSCPDataStageTask.java @@ -95,6 +95,16 @@ public class AdvancedSCPDataStageTask implements Task{ passPhrase = sshCredential.getPassphrase(); // userName = sshCredential.getPortalUserName(); // this might not same as login user name authenticationInfo = getSSHKeyAuthentication(); + }else { + String msg = "Provided credential store token is not valid. Please provide the correct credential store token"; + log.error(msg); + status.setState(TaskState.FAILED); + status.setReason(msg); + ErrorModel errorModel = new ErrorModel(); + errorModel.setActualErrorMessage(msg); + errorModel.setUserFriendlyMessage(msg); + taskContext.getTaskModel().setTaskError(errorModel); + return status; } status = new TaskStatus(TaskState.COMPLETED); subTaskModel = (DataStagingTaskModel) ThriftUtils.getSubTaskModel http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/ForkJobSubmissionTask.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/ForkJobSubmissionTask.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/ForkJobSubmissionTask.java deleted file mode 100644 index f8ef0ea..0000000 --- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/ForkJobSubmissionTask.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * - * 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. - * -*/ - -package org.apache.airavata.gfac.impl.task; - -import org.apache.airavata.gfac.core.context.TaskContext; -import org.apache.airavata.gfac.core.task.JobSubmissionTask; -import org.apache.airavata.gfac.core.task.TaskException; -import org.apache.airavata.model.status.TaskState; -import org.apache.airavata.model.status.TaskStatus; -import org.apache.airavata.model.task.TaskTypes; - -import java.util.Map; - -public class ForkJobSubmissionTask implements JobSubmissionTask { - @Override - public void init(Map<String, String> propertyMap) throws TaskException { - - } - - @Override - public TaskStatus execute(TaskContext taskContext) { - return null; - } - - @Override - public TaskStatus recover(TaskContext taskContext) { - return null; - } - - @Override - public TaskTypes getType() { - return TaskTypes.JOB_SUBMISSION; - } -} http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHForkJobSubmissionTask.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHForkJobSubmissionTask.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHForkJobSubmissionTask.java new file mode 100644 index 0000000..ddd33e1 --- /dev/null +++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHForkJobSubmissionTask.java @@ -0,0 +1,162 @@ +/* + * + * 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. + * +*/ + +package org.apache.airavata.gfac.impl.task; + +import org.apache.airavata.common.exception.ApplicationSettingsException; +import org.apache.airavata.gfac.core.*; +import org.apache.airavata.gfac.core.cluster.RemoteCluster; +import org.apache.airavata.gfac.core.context.ProcessContext; +import org.apache.airavata.gfac.core.context.TaskContext; +import org.apache.airavata.gfac.core.task.JobSubmissionTask; +import org.apache.airavata.gfac.core.task.TaskException; +import org.apache.airavata.gfac.impl.Factory; +import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManager; +import org.apache.airavata.model.commons.ErrorModel; +import org.apache.airavata.model.job.JobModel; +import org.apache.airavata.model.status.JobState; +import org.apache.airavata.model.status.JobStatus; +import org.apache.airavata.model.status.TaskState; +import org.apache.airavata.model.status.TaskStatus; +import org.apache.airavata.model.task.TaskTypes; +import org.apache.airavata.registry.cpi.AppCatalogException; +import org.apache.commons.io.FileUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.File; +import java.io.IOException; +import java.util.Map; + +public class SSHForkJobSubmissionTask implements JobSubmissionTask { + private static final Logger log = LoggerFactory.getLogger(SSHForkJobSubmissionTask.class); + @Override + public void init(Map<String, String> propertyMap) throws TaskException { + + } + + @Override + public TaskStatus execute(TaskContext taskContext) { + TaskStatus taskStatus = new TaskStatus(TaskState.CREATED); + try { + ProcessContext processContext = taskContext.getParentProcessContext(); + JobModel jobModel = processContext.getJobModel(); + jobModel.setTaskId(taskContext.getTaskId()); + RemoteCluster remoteCluster = processContext.getRemoteCluster(); + JobDescriptor jobDescriptor = GFacUtils.createJobDescriptor(processContext); + jobModel.setJobName(jobDescriptor.getJobName()); + ResourceJobManager resourceJobManager = GFacUtils.getResourceJobManager(processContext); + JobManagerConfiguration jConfig = null; + if (resourceJobManager != null) { + jConfig = Factory.getJobManagerConfiguration(resourceJobManager); + } + JobStatus jobStatus = new JobStatus(); + File jobFile = GFacUtils.createJobFile(jobDescriptor, jConfig); + if (jobFile != null && jobFile.exists()) { + jobModel.setJobDescription(FileUtils.readFileToString(jobFile)); + String jobId = remoteCluster.submitBatchJob(jobFile.getPath(), processContext.getWorkingDir()); + if (jobId != null && !jobId.isEmpty()) { + jobModel.setJobId(jobId); + GFacUtils.saveJobModel(processContext, jobModel); + jobStatus.setJobState(JobState.SUBMITTED); + jobStatus.setReason("Successfully Submitted to " + taskContext.getParentProcessContext() + .getComputeResourceDescription().getHostName()); + jobModel.setJobStatus(jobStatus); + GFacUtils.saveJobStatus(taskContext.getParentProcessContext(), jobModel); + taskStatus = new TaskStatus(TaskState.COMPLETED); + taskStatus.setReason("Submitted job to compute resource"); + } + if (jobId == null || jobId.isEmpty()) { + String msg = "expId:" + processContext.getProcessModel().getExperimentId() + " Couldn't find " + + "remote jobId for JobName:" + jobModel.getJobName() + ", both submit and verify steps " + + "doesn't return a valid JobId. " + "Hence changing experiment state to Failed"; + log.error(msg); + GFacUtils.saveErrorDetails(processContext, msg); + taskStatus.setState(TaskState.FAILED); + taskStatus.setReason("Couldn't find job id in both submitted and verified steps"); + } + } else { + taskStatus.setState(TaskState.FAILED); + if (jobFile == null) { + taskStatus.setReason("JobFile is null"); + } else { + taskStatus.setReason("Job file doesn't exist"); + } + } + } catch (ApplicationSettingsException e) { + String msg = "Error occurred while creating job descriptor"; + log.error(msg, e); + taskStatus.setState(TaskState.FAILED); + taskStatus.setReason(msg); + ErrorModel errorModel = new ErrorModel(); + errorModel.setActualErrorMessage(e.getMessage()); + errorModel.setUserFriendlyMessage(msg); + taskContext.getTaskModel().setTaskError(errorModel); + } catch (AppCatalogException e) { + String msg = "Error while instantiating app catalog"; + log.error(msg, e); + taskStatus.setState(TaskState.FAILED); + taskStatus.setReason(msg); + ErrorModel errorModel = new ErrorModel(); + errorModel.setActualErrorMessage(e.getMessage()); + errorModel.setUserFriendlyMessage(msg); + taskContext.getTaskModel().setTaskError(errorModel); + } catch (GFacException e) { + String msg = "Error occurred while creating job descriptor"; + log.error(msg, e); + taskStatus.setState(TaskState.FAILED); + taskStatus.setReason(msg); + ErrorModel errorModel = new ErrorModel(); + errorModel.setActualErrorMessage(e.getMessage()); + errorModel.setUserFriendlyMessage(msg); + taskContext.getTaskModel().setTaskError(errorModel); + } catch (SSHApiException e) { + String msg = "Error occurred while submitting the job"; + log.error(msg, e); + taskStatus.setState(TaskState.FAILED); + taskStatus.setReason(msg); + ErrorModel errorModel = new ErrorModel(); + errorModel.setActualErrorMessage(e.getMessage()); + errorModel.setUserFriendlyMessage(msg); + taskContext.getTaskModel().setTaskError(errorModel); + } catch (IOException e) { + String msg = "Error while reading the content of the job file"; + log.error(msg, e); + taskStatus.setState(TaskState.FAILED); + taskStatus.setReason(msg); + ErrorModel errorModel = new ErrorModel(); + errorModel.setActualErrorMessage(e.getMessage()); + errorModel.setUserFriendlyMessage(msg); + taskContext.getTaskModel().setTaskError(errorModel); + } + return taskStatus; + } + + @Override + public TaskStatus recover(TaskContext taskContext) { + return null; + } + + @Override + public TaskTypes getType() { + return TaskTypes.JOB_SUBMISSION; + } +} http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHJobSubmissionTask.java ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHJobSubmissionTask.java b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHJobSubmissionTask.java index e69cfa5..34d0945 100644 --- a/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHJobSubmissionTask.java +++ b/modules/gfac/gfac-impl/src/main/java/org/apache/airavata/gfac/impl/task/SSHJobSubmissionTask.java @@ -131,7 +131,7 @@ public class SSHJobSubmissionTask implements JobSubmissionTask { } } catch (AppCatalogException e) { - String msg = "Error while instatiating app catalog"; + String msg = "Error while instantiating app catalog"; log.error(msg, e); taskStatus.setState(TaskState.FAILED); taskStatus.setReason(msg); http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/modules/gfac/gfac-impl/src/main/resources/ForkTemplate.xslt ---------------------------------------------------------------------- diff --git a/modules/gfac/gfac-impl/src/main/resources/ForkTemplate.xslt b/modules/gfac/gfac-impl/src/main/resources/ForkTemplate.xslt new file mode 100644 index 0000000..f04c911 --- /dev/null +++ b/modules/gfac/gfac-impl/src/main/resources/ForkTemplate.xslt @@ -0,0 +1,24 @@ +<!--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. --> +<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:ns="http://airavata.apache.org/gsi/ssh/2012/12"> +<xsl:output method="text" /> +<xsl:template match="/ns:JobDescriptor"> +#! /bin/sh +cd <xsl:text> </xsl:text><xsl:value-of select="ns:workingDirectory"/><xsl:text>
</xsl:text> + <xsl:choose><xsl:when test="ns:jobSubmitterCommand"> +<xsl:value-of select="ns:jobSubmitterCommand"/><xsl:text> </xsl:text></xsl:when></xsl:choose><xsl:value-of select="ns:executablePath"/><xsl:text> </xsl:text> +<xsl:for-each select="ns:inputs/ns:input"> + <xsl:value-of select="."/><xsl:text> </xsl:text> + </xsl:for-each> +<xsl:for-each select="ns:postJobCommands/ns:command"> + <xsl:value-of select="."/><xsl:text> </xsl:text> +</xsl:for-each> + +</xsl:template> + +</xsl:stylesheet> \ No newline at end of file http://git-wip-us.apache.org/repos/asf/airavata/blob/9534a810/thrift-interface-descriptions/airavata-api/compute_resource_model.thrift ---------------------------------------------------------------------- diff --git a/thrift-interface-descriptions/airavata-api/compute_resource_model.thrift b/thrift-interface-descriptions/airavata-api/compute_resource_model.thrift index c01a028..75db7ec 100644 --- a/thrift-interface-descriptions/airavata-api/compute_resource_model.thrift +++ b/thrift-interface-descriptions/airavata-api/compute_resource_model.thrift @@ -194,7 +194,8 @@ enum JobSubmissionProtocol { SSH, GLOBUS, UNICORE, - CLOUD + CLOUD, + SSH_FORK } /** @@ -210,7 +211,8 @@ enum JobSubmissionProtocol { enum MonitorMode { POLL_JOB_MANAGER, JOB_EMAIL_NOTIFICATION_MONITOR, - XSEDE_AMQP_SUBSCRIBE + XSEDE_AMQP_SUBSCRIBE, + FORK } /**
