You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ad...@apache.org on 2017/05/10 16:13:10 UTC
[1/7] airavata git commit: Correcting yaml configuration file
Repository: airavata
Updated Branches:
refs/heads/feature-workload-mgmt cc1ca3d59 -> 2defa8f1d
Correcting yaml configuration file
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/1846b98b
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/1846b98b
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/1846b98b
Branch: refs/heads/feature-workload-mgmt
Commit: 1846b98b8b2f82fa20b6c150f5e3cafc2641a7c6
Parents: cc1ca3d
Author: Ajinkya Dhamnaskar <ad...@apache.org>
Authored: Wed May 10 12:08:30 2017 -0400
Committer: Ajinkya Dhamnaskar <ad...@apache.org>
Committed: Wed May 10 12:08:30 2017 -0400
----------------------------------------------------------------------
.../src/main/resources/worker-config.yaml | 185 ++++++++++++-------
.../src/main/resources/worker-config.yaml | 32 ----
2 files changed, 114 insertions(+), 103 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/1846b98b/modules/worker/worker-core/src/main/resources/worker-config.yaml
----------------------------------------------------------------------
diff --git a/modules/worker/worker-core/src/main/resources/worker-config.yaml b/modules/worker/worker-core/src/main/resources/worker-config.yaml
index 5fef110..9d856cd 100644
--- a/modules/worker/worker-core/src/main/resources/worker-config.yaml
+++ b/modules/worker/worker-core/src/main/resources/worker-config.yaml
@@ -18,76 +18,119 @@
#
################################################################
-config:
- jobSubmitters:
- - submissionProtocol: SSH
- taskClass: org.apache.airavata.task.adapters.SSHJobSubmissionTask
- properties:
- - password: pwd123
- - passPhrase: test
- - privateKey: key
- - publicKey: pubkey
-
- - submissionProtocol: GSISSH
- taskClass: org.apache.airavata.task.adapters.GSISSHJobSubmissionTask
-
- commonTasks:
- - type: SETUP
- taskClass: org.apache.airavata.task.common.SetupTask
-
- - type: CLEANUP
- taskClass: org.apache.airavata.task.common.CleanupTask
-
- fileTransferTasks:
- - transferProtocol: SCP
- taskClass: org.apache.airavata.task.adapters.SCPFileTransferTask
- properties:
- - password: pwd123
- - passPhrase: test
- - privateKey: key
- - publicKey: pubkey
-
- - transferProtocol: HTTP
- taskClass: org.apache.airavata.task.adapters.HTTPFileTransferTask
-
- - transferProtocol: GRIDFTP
- taskClass: org.apache.airavata.task.adapters.GRIDFTPFileTransferTask
-
- resources:
- - jobManagerType: PBS
- commandOutputParser: org.apache.airavata.commmand.PBSOutputParser
- emailParser: org.apache.airavata.email.parser.PBSEmailParser
- resourceEmailAddresses:
- - pbsconsult@sdsc.edu # gordon
- - adm@trident.bigred2.uits.iu.edu # Bigred2
- - root <ad...@trident.bigred2.uits.iu.edu> # Bigred2
- - root <ad...@scyld.localdomain> # alamo
-
- - jobManagerType: SLURM
- commandOutputParser: org.apache.airavata.commmand.SLURMOutputParser
- emailParser: org.apache.airavata.email.parser.SLURMEmailParser
- resourceEmailAddresses:
- - SDSC Admin <sl...@comet-fe3.sdsc.edu> # comet
- - slurm@batch1.stampede.tacc.utexas.edu # stampede
-
- - jobManagerType: UGE
- commandOutputParser: org.apache.airavata.commmand.UGEOutputParser
- emailParser: org.apache.airavata.email.parser.UGEEmailParser
- resourceEmailAddresses:
- - ls4.tacc.utexas.edu # contain Lonestar
-
-
- taskImplementations:
- - task: ENV_SETUP
- taskClass: org.apache.airavata.worker.task.envsetup.impl.EnvironmentSetupTask
-
- - task: DATA_STAGING
- taskClass: org.apache.airavata.worker.task.datastaging.impl.DataStageTask
-
- - task: JOB_SUBMISSION
- taskClass: org.apache.airavata.worker.task.jobsubmission.impl.DefaultJobSubmissionTask
-
- - task: MONITORING
- taskClass: org.apache.airavata.worker.task.envsetup.impl.EnvironmentSetupTask
+jobSubmitters:
+ - submissionProtocol: SSH
+ taskClass: org.apache.airavata.gfac.impl.task.DefaultJobSubmissionTask
+# properties:
+# - userName: airavata
+# passPhrase: airavata
+# privateKeyPath: /path/to/the/privatekey
+# publicKeyPath: /path/to/the/publickey
+# hostName: remote.client.hostName
+
+ - submissionProtocol: SSH_FORK
+ taskClass: org.apache.airavata.gfac.impl.task.ForkJobSubmissionTask
+
+ - submissionProtocol: LOCAL
+ taskClass: org.apache.airavata.gfac.impl.task.LocalJobSubmissionTask
+
+ - submissionProtocol: CLOUD
+ taskClass: org.apache.airavata.gfac.impl.task.AuroraJobSubmissionTask
+
+# Following job subbmitters are not yet implemented.
+
+ # - submissionProtocol: GSISSH
+ # taskClass: org.apache.airavata.task.adapters.GSISSHJobSubmissionTask
+commonTasks:
+ - type: SETUP
+ taskClass: org.apache.airavata.task.common.SetupTask
+
+ - type: CLEANUP
+ taskClass: org.apache.airavata.task.common.CleanupTask
+
+fileTransferTasks:
+ - transferProtocol: SCP
+ taskClass: org.apache.airavata.gfac.impl.task.SCPDataStageTask
+ - transferProtocol: LOCAL
+ taskClass: org.apache.airavata.gfac.impl.task.SCPDataStageTask
+
+# If your client doen't run the same instance where airavata server is running then you need to comment above
+# DataStageTask and uncomment SCPDataStageTask. To work with SCPDataStageTask, you either need to
+# provide ssh keys or password.
+
+# - transferProtocol: SCP
+# taskClass: org.apache.airavata.gfac.impl.task.SCPDataStageTask
+# properties:
+# - userName: airavata
+# passPhrase: airavata
+# privateKeyPath: /path/to/the/privatekey
+# publicKeyPath: /path/to/the/publickey
+# hostName: remote.client.hostName
+# inputPath: /path/to/data/dir
+## password: password
+
+# Following transfer tasks are not yet implemented.
+ #- transferProtocol: SFTP
+ # taskClass: org.apache.airavata.task.adapters.SFTPFileTransferTask
+
+ #- transferProtocol: GRIDFTP
+ # taskClass: org.apache.airavata.task.adapters.GRIDFTPFileTransferTask
+
+ #- transferProtocol: LOCAL
+ # taskClass: org.apache.airavata.task.adapters.LocalFileTransferTask
+
+resources:
+ - jobManagerType: PBS
+ commandOutputParser: org.apache.airavata.gfac.impl.job.PBSOutputParser
+ emailParser: org.apache.airavata.gfac.monitor.email.parser.PBSEmailParser
+ resourceEmailAddresses:
+ - pbsconsult@sdsc.edu # gordon
+ - adm@trident.bigred2.uits.iu.edu # Bigred2
+ - root <ad...@trident.bigred2.uits.iu.edu> # Bigred2
+ - root <ad...@scyld.localdomain> # alamo
+ - gordon-fe2.local # Gordon
+
+ - jobManagerType: SLURM
+ commandOutputParser: org.apache.airavata.gfac.impl.job.SlurmOutputParser
+ emailParser: org.apache.airavata.gfac.monitor.email.parser.SLURMEmailParser
+ resourceEmailAddresses:
+ - slurm@comet # comet
+ - slurm@batch1.stampede.tacc.utexas.edu # stampede
+ - root@master.ls5.tacc.utexas.edu # Lonestar 5
+ - slurm@jurecab01.zam.kfa-juelich.de # Jureca
+
+ - jobManagerType: UGE
+ commandOutputParser: org.apache.airavata.gfac.impl.job.UGEOutputParser
+ emailParser: org.apache.airavata.gfac.monitor.email.parser.UGEEmailParser
+ resourceEmailAddresses:
+ - ls4.tacc.utexas.edu # contain Lonestar
+
+ - jobManagerType: LSF
+ commandOutputParser: org.apache.airavata.gfac.impl.job.LSFOutputParser
+ emailParser: org.apache.airavata.gfac.monitor.email.parser.LSFEmailParser
+ resourceEmailAddresses:
+ - iu.xsede.edu # test resource mail address
+
+ - jobManagerType: FORK
+ commandOutputParser: org.apache.airavata.gfac.impl.job.ForkOutputParser
+
+ - jobManagerType: AIRAVATA_CUSTOM
+ commandOutputParser: org.apache.airavata.gfac.impl.job.AiravataCustomCommandOutputParser
+ emailParser: org.apache.airavata.gfac.monitor.email.parser.AiravataCustomMailParser
+ resourceEmailAddresses:
+ - gw56jobs@scigap.org
+
+taskImplementations:
+ - task: ENV_SETUP
+ taskClass: org.apache.airavata.worker.task.envsetup.impl.EnvironmentSetupTask
+
+ - task: DATA_STAGING
+ taskClass: org.apache.airavata.worker.task.datastaging.impl.DataStageTask
+
+ - task: JOB_SUBMISSION
+ taskClass: org.apache.airavata.worker.task.jobsubmission.impl.DefaultJobSubmissionTask
+
+ - task: MONITORING
+ taskClass: org.apache.airavata.worker.task.envsetup.impl.EnvironmentSetupTask
http://git-wip-us.apache.org/repos/asf/airavata/blob/1846b98b/modules/worker/worker-messaging/src/main/resources/worker-config.yaml
----------------------------------------------------------------------
diff --git a/modules/worker/worker-messaging/src/main/resources/worker-config.yaml b/modules/worker/worker-messaging/src/main/resources/worker-config.yaml
deleted file mode 100644
index 87b8310..0000000
--- a/modules/worker/worker-messaging/src/main/resources/worker-config.yaml
+++ /dev/null
@@ -1,32 +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.
-#
-################################################################
-
-taskImplementations:
- - task: ENV_SETUP
- taskClass: org.apache.airavata.worker.task.envsetup.impl.EnvironmentSetupTask
-
- - task: DATA_STAGING
- taskClass: org.apache.airavata.worker.task.datastaging.impl.DataStageTask
-
- - task: JOB_SUBMISSION
- taskClass: org.apache.airavata.worker.task.jobsubmission.impl.DefaultJobSubmissionTask
-
- - task: MONITORING
- taskClass: org.apache.airavata.worker.task.envsetup.impl.EnvironmentSetupTask
\ No newline at end of file
[3/7] airavata git commit: Adding tasks dependency in messaging module
Posted by ad...@apache.org.
Adding tasks dependency in messaging module
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/c9309df5
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/c9309df5
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/c9309df5
Branch: refs/heads/feature-workload-mgmt
Commit: c9309df53ff0b8acc9530300fcb512215ebc19ee
Parents: acd6223
Author: Ajinkya Dhamnaskar <ad...@apache.org>
Authored: Wed May 10 12:10:04 2017 -0400
Committer: Ajinkya Dhamnaskar <ad...@apache.org>
Committed: Wed May 10 12:10:04 2017 -0400
----------------------------------------------------------------------
modules/worker/worker-messaging/pom.xml | 15 +++++++++++++++
1 file changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/c9309df5/modules/worker/worker-messaging/pom.xml
----------------------------------------------------------------------
diff --git a/modules/worker/worker-messaging/pom.xml b/modules/worker/worker-messaging/pom.xml
index 49793a3..1d9848f 100644
--- a/modules/worker/worker-messaging/pom.xml
+++ b/modules/worker/worker-messaging/pom.xml
@@ -31,6 +31,21 @@
<version>${project.parent.version}</version>
</dependency>
<dependency>
+ <groupId>org.apache.airavata</groupId>
+ <artifactId>airavata-task-envsetup</artifactId>
+ <version>${project.parent.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.airavata</groupId>
+ <artifactId>airavata-task-jobsubmission</artifactId>
+ <version>${project.parent.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.airavata</groupId>
+ <artifactId>airavata-task-datastaging</artifactId>
+ <version>${project.parent.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>${testng.version}</version>
[7/7] airavata git commit: Adding test for task implementation
reflection
Posted by ad...@apache.org.
Adding test for task implementation reflection
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/2defa8f1
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/2defa8f1
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/2defa8f1
Branch: refs/heads/feature-workload-mgmt
Commit: 2defa8f1d85fbbaa015519d438d518953b6bb664
Parents: 7341de2
Author: Ajinkya Dhamnaskar <ad...@apache.org>
Authored: Wed May 10 12:12:57 2017 -0400
Committer: Ajinkya Dhamnaskar <ad...@apache.org>
Committed: Wed May 10 12:12:57 2017 -0400
----------------------------------------------------------------------
.../src/test/java/TestWorkerMessaging.java | 38 ++++++++++++++++----
1 file changed, 32 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/2defa8f1/modules/worker/worker-messaging/src/test/java/TestWorkerMessaging.java
----------------------------------------------------------------------
diff --git a/modules/worker/worker-messaging/src/test/java/TestWorkerMessaging.java b/modules/worker/worker-messaging/src/test/java/TestWorkerMessaging.java
index b353ce7..d61f34d 100644
--- a/modules/worker/worker-messaging/src/test/java/TestWorkerMessaging.java
+++ b/modules/worker/worker-messaging/src/test/java/TestWorkerMessaging.java
@@ -1,6 +1,13 @@
import org.apache.airavata.common.exception.AiravataException;
import org.apache.airavata.model.task.TaskTypes;
+import org.apache.airavata.worker.core.exceptions.WorkerException;
+import org.apache.airavata.worker.core.task.Task;
+import org.apache.airavata.worker.core.utils.WorkerFactory;
import org.apache.airavata.worker.messaging.utils.WorkerMessagingFactory;
+import org.apache.airavata.worker.task.datastaging.impl.DataStageTask;
+import org.apache.airavata.worker.task.datastaging.utils.DataStagingFactory;
+import org.apache.airavata.worker.task.envsetup.impl.EnvironmentSetupTask;
+import org.apache.airavata.worker.task.jobsubmission.impl.DefaultJobSubmissionTask;
import org.testng.Assert;
import org.testng.annotations.Test;
@@ -12,17 +19,36 @@ import java.util.List;
*/
public class TestWorkerMessaging {
+// @Test
+// public void testSubscriberCreation(){
+// List<String> tasks = new ArrayList<String>(){{add(TaskTypes.ENV_SETUP.toString());add(TaskTypes.DATA_STAGING.toString());}};
+// try {
+//
+// WorkerMessagingFactory.createSubscribers(tasks);
+// Assert.assertEquals(WorkerMessagingFactory.getSubscriberMap().size(), tasks.size());
+//
+// } catch (AiravataException e) {
+// Assert.fail("Fail to start subscribers.", e);
+// }
+// }
+
@Test
- public void testSubscriberCreation(){
- List<String> tasks = new ArrayList<String>(){{add(TaskTypes.ENV_SETUP.toString());add(TaskTypes.DATA_STAGING.toString());}};
+ public void testTaskImplementationFactory(){
+
try {
+ WorkerMessagingFactory.loadConfiguration();
+ Task task = WorkerMessagingFactory.getTaskImplementation(TaskTypes.ENV_SETUP);
+ Assert.assertEquals(task instanceof EnvironmentSetupTask, true);
- WorkerMessagingFactory.createSubscribers(tasks);
- Assert.assertEquals(WorkerMessagingFactory.getSubscriberMap().size(), tasks.size());
+ task = WorkerMessagingFactory.getTaskImplementation(TaskTypes.DATA_STAGING);
+ Assert.assertEquals(task instanceof DataStageTask, true);
- } catch (AiravataException e) {
- Assert.fail("Fail to start subscribers.", e);
+ task = WorkerMessagingFactory.getTaskImplementation(TaskTypes.JOB_SUBMISSION);
+ Assert.assertEquals(task instanceof DefaultJobSubmissionTask, true);
+ } catch (WorkerException e) {
+ Assert.fail("Failed to load worker configuration.", e);
}
+
}
}
[5/7] airavata git commit: Moving task implementation class load
patch to messaging
Posted by ad...@apache.org.
Moving task implementation class load patch to messaging
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/2180f05f
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/2180f05f
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/2180f05f
Branch: refs/heads/feature-workload-mgmt
Commit: 2180f05fec67eca5a82143d1e83925f568307bb7
Parents: 2df27e6
Author: Ajinkya Dhamnaskar <ad...@apache.org>
Authored: Wed May 10 12:11:44 2017 -0400
Committer: Ajinkya Dhamnaskar <ad...@apache.org>
Committed: Wed May 10 12:11:44 2017 -0400
----------------------------------------------------------------------
.../messaging/utils/WorkerMessagingFactory.java | 36 ++++++++++++++++++++
1 file changed, 36 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/2180f05f/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java
----------------------------------------------------------------------
diff --git a/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java b/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java
index d33bc8b..aae0490 100644
--- a/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java
+++ b/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java
@@ -1,15 +1,27 @@
package org.apache.airavata.worker.messaging.utils;
+import com.google.common.cache.CacheBuilder;
+import com.google.common.cache.RemovalListener;
+import com.jcraft.jsch.Session;
import org.apache.airavata.common.exception.AiravataException;
+import org.apache.airavata.common.utils.ServerSettings;
import org.apache.airavata.messaging.core.MessagingFactory;
import org.apache.airavata.messaging.core.Subscriber;
+import org.apache.airavata.model.task.TaskTypes;
+import org.apache.airavata.worker.core.config.ResourceConfig;
+import org.apache.airavata.worker.core.config.TaskImplementationConfig;
+import org.apache.airavata.worker.core.config.WorkerYamlConfigruation;
+import org.apache.airavata.worker.core.exceptions.WorkerException;
+import org.apache.airavata.worker.core.task.Task;
import org.apache.airavata.worker.messaging.handler.WorkerMessageHandler;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import java.lang.reflect.Constructor;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.concurrent.TimeUnit;
/**
* Created by Ajinkya on 5/2/17.
@@ -18,11 +30,35 @@ public class WorkerMessagingFactory {
private final static Logger log = LoggerFactory.getLogger(WorkerMessagingFactory.class);
private final static Map<String, Subscriber> SUBSCRIBER_MAP;
+ private static boolean isWorkerConfigurationLoaded = false;
+ private static Map<TaskTypes, Task> taskImplementations = new HashMap<>();
static{
SUBSCRIBER_MAP = new HashMap<>();
}
+ public static void loadConfiguration() throws WorkerException {
+ if (!isWorkerConfigurationLoaded) {
+ WorkerYamlConfigruation config = new WorkerYamlConfigruation();
+ try {
+ for (TaskImplementationConfig taskImplementationConfig : config.getTaskImplementations()) {
+ String taskClass = taskImplementationConfig.getImplementationClass();
+ Class<?> aClass = Class.forName(taskClass);
+ Constructor<?> constructor = aClass.getConstructor();
+ Task task = (Task) constructor.newInstance();
+ taskImplementations.put(taskImplementationConfig.getTaskType(), task);
+ }
+ }catch (Exception e) {
+ throw new WorkerException("Worker config issue", e);
+ }
+ isWorkerConfigurationLoaded = true;
+ }
+ }
+
+ public static Task getTaskImplementation(TaskTypes taskType) {
+ return taskImplementations.get(taskType);
+ }
+
public static Map<String, Subscriber> getSubscriberMap(){
return SUBSCRIBER_MAP;
}
[4/7] airavata git commit: Refactoring worker-core yaml
Posted by ad...@apache.org.
Refactoring worker-core yaml
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/2df27e6a
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/2df27e6a
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/2df27e6a
Branch: refs/heads/feature-workload-mgmt
Commit: 2df27e6a1206d40dd3d96670a75b683f77bf25bd
Parents: c9309df
Author: Ajinkya Dhamnaskar <ad...@apache.org>
Authored: Wed May 10 12:10:42 2017 -0400
Committer: Ajinkya Dhamnaskar <ad...@apache.org>
Committed: Wed May 10 12:10:42 2017 -0400
----------------------------------------------------------------------
.../worker/core/config/TaskImplementationConfig.java | 6 +++---
.../worker/core/config/WorkerYamlConfigruation.java | 3 ++-
.../apache/airavata/worker/core/utils/WorkerFactory.java | 11 -----------
3 files changed, 5 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/2df27e6a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/TaskImplementationConfig.java
----------------------------------------------------------------------
diff --git a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/TaskImplementationConfig.java b/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/TaskImplementationConfig.java
index a5f0df1..6be6577 100644
--- a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/TaskImplementationConfig.java
+++ b/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/TaskImplementationConfig.java
@@ -10,14 +10,14 @@ import java.util.Map;
*/
public class TaskImplementationConfig {
- private String taskType;
+ private TaskTypes taskType;
private String implementationClass;
- public String getTaskType() {
+ public TaskTypes getTaskType() {
return taskType;
}
- public void setTaskType(String taskType) {
+ public void setTaskType(TaskTypes taskType) {
this.taskType = taskType;
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/2df27e6a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/WorkerYamlConfigruation.java
----------------------------------------------------------------------
diff --git a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/WorkerYamlConfigruation.java b/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/WorkerYamlConfigruation.java
index b745b81..7f03dc0 100644
--- a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/WorkerYamlConfigruation.java
+++ b/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/config/WorkerYamlConfigruation.java
@@ -22,6 +22,7 @@ package org.apache.airavata.worker.core.config;
import org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol;
import org.apache.airavata.model.appcatalog.computeresource.ResourceJobManagerType;
import org.apache.airavata.model.data.movement.DataMovementProtocol;
+import org.apache.airavata.model.task.TaskTypes;
import org.apache.airavata.worker.core.exceptions.WorkerException;
import org.yaml.snakeyaml.Yaml;
@@ -141,7 +142,7 @@ public class WorkerYamlConfigruation {
for (Map<String, Object> taskImplementations : taskImplementationYaml) {
taskImplementationConfig = new TaskImplementationConfig();
identifier = ((String) taskImplementations.get(TASK));
- taskImplementationConfig.setTaskType(identifier);
+ taskImplementationConfig.setTaskType(TaskTypes.valueOf(identifier));
taskImplementationConfig.setImplementationClass(((String) taskImplementations.get(TASK_CLASS)));
this.taskImplementations.add(taskImplementationConfig);
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/2df27e6a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/utils/WorkerFactory.java
----------------------------------------------------------------------
diff --git a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/utils/WorkerFactory.java b/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/utils/WorkerFactory.java
index 4a0a02f..866d2f9 100644
--- a/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/utils/WorkerFactory.java
+++ b/modules/worker/worker-core/src/main/java/org/apache/airavata/worker/core/utils/WorkerFactory.java
@@ -59,7 +59,6 @@ public class WorkerFactory {
private static boolean isWorkerConfigurationLoaded = false;
private static Map<ResourceJobManagerType, ResourceConfig> resources = new HashMap<>();
private static Cache<String,Session> sessionCache;
- private static Map<String, Task> taskImplementations = new HashMap<>();
public static void loadConfiguration() throws WorkerException {
if (!isWorkerConfigurationLoaded) {
@@ -68,20 +67,10 @@ public class WorkerFactory {
for (ResourceConfig resourceConfig : config.getResourceConfiguration()) {
resources.put(resourceConfig.getJobManagerType(), resourceConfig);
}
-
- for (TaskImplementationConfig taskImplementationConfig : config.getTaskImplementations()) {
- String taskClass = taskImplementationConfig.getImplementationClass();
- Class<?> aClass = Class.forName(taskClass);
- Constructor<?> constructor = aClass.getConstructor();
- Task task = (Task) constructor.newInstance();
- taskImplementations.put(taskImplementationConfig.getTaskType(), task);
- }
}catch (Exception e) {
throw new WorkerException("Worker config issue", e);
}
-
-
sessionCache = CacheBuilder.newBuilder()
.expireAfterAccess(ServerSettings.getSessionCacheAccessTimeout(), TimeUnit.MINUTES)
.removalListener((RemovalListener<String, Session>) removalNotification -> {
[6/7] airavata git commit: Moving task implementation class load
patch to messaging
Posted by ad...@apache.org.
Moving task implementation class load patch to messaging
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/7341de24
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/7341de24
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/7341de24
Branch: refs/heads/feature-workload-mgmt
Commit: 7341de2444e4f37a3311a2d818d8de8b7ce2369a
Parents: 2180f05
Author: Ajinkya Dhamnaskar <ad...@apache.org>
Authored: Wed May 10 12:12:26 2017 -0400
Committer: Ajinkya Dhamnaskar <ad...@apache.org>
Committed: Wed May 10 12:12:26 2017 -0400
----------------------------------------------------------------------
.../airavata/worker/messaging/utils/WorkerMessagingFactory.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/7341de24/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java
----------------------------------------------------------------------
diff --git a/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java b/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java
index aae0490..605ceb6 100644
--- a/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java
+++ b/modules/worker/worker-messaging/src/main/java/org/apache/airavata/worker/messaging/utils/WorkerMessagingFactory.java
@@ -55,7 +55,7 @@ public class WorkerMessagingFactory {
}
}
- public static Task getTaskImplementation(TaskTypes taskType) {
+ public static Task getTaskImplementation(TaskTypes taskType) {
return taskImplementations.get(taskType);
}
[2/7] airavata git commit: Adding testng dependency to worker-core
Posted by ad...@apache.org.
Adding testng dependency to worker-core
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/acd62233
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/acd62233
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/acd62233
Branch: refs/heads/feature-workload-mgmt
Commit: acd62233c228281d7d9839a8a27d3ab664d91f55
Parents: 1846b98
Author: Ajinkya Dhamnaskar <ad...@apache.org>
Authored: Wed May 10 12:09:16 2017 -0400
Committer: Ajinkya Dhamnaskar <ad...@apache.org>
Committed: Wed May 10 12:09:16 2017 -0400
----------------------------------------------------------------------
modules/worker/worker-core/pom.xml | 11 +++++++++++
1 file changed, 11 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/acd62233/modules/worker/worker-core/pom.xml
----------------------------------------------------------------------
diff --git a/modules/worker/worker-core/pom.xml b/modules/worker/worker-core/pom.xml
index 32d37d1..59dca86 100644
--- a/modules/worker/worker-core/pom.xml
+++ b/modules/worker/worker-core/pom.xml
@@ -16,6 +16,10 @@
<description>Environment setup task implementation.</description>
<url>http://airavata.apache.org/</url>
+ <properties>
+ <testng.version>6.9.10</testng.version>
+ </properties>
+
<dependencies>
<!-- Logging -->
<dependency>
@@ -69,6 +73,13 @@
<artifactId>curator-framework</artifactId>
<version>${curator.version}</version>
</dependency>
+
+ <!-- testng dependency -->
+ <dependency>
+ <groupId>org.testng</groupId>
+ <artifactId>testng</artifactId>
+ <version>${testng.version}</version>
+ </dependency>
</dependencies>
</project>
\ No newline at end of file