You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by sm...@apache.org on 2014/08/12 22:45:27 UTC
[05/12] SLIDER-285. Slider Agents to bind and work with restarted AM
(Gour Saha via smohanty)
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/58014d80/slider-core/src/test/groovy/org/apache/slider/server/appmaster/model/mock/MockProviderService.groovy
----------------------------------------------------------------------
diff --git a/slider-core/src/test/groovy/org/apache/slider/server/appmaster/model/mock/MockProviderService.groovy b/slider-core/src/test/groovy/org/apache/slider/server/appmaster/model/mock/MockProviderService.groovy
index 458cfac..6db1ac5 100644
--- a/slider-core/src/test/groovy/org/apache/slider/server/appmaster/model/mock/MockProviderService.groovy
+++ b/slider-core/src/test/groovy/org/apache/slider/server/appmaster/model/mock/MockProviderService.groovy
@@ -18,6 +18,8 @@
package org.apache.slider.server.appmaster.model.mock
+import java.io.IOException;
+
import org.apache.hadoop.conf.Configuration
import org.apache.hadoop.fs.Path
import org.apache.hadoop.service.LifecycleEvent
@@ -166,6 +168,11 @@ class MockProviderService implements ProviderService {
}
@Override
+ void initializeApplicationConfiguration(AggregateConf instanceDefinition,
+ SliderFileSystem fileSystem) throws IOException, SliderException {
+ }
+
+ @Override
public void validateApplicationConfiguration(
AggregateConf instanceDefinition,
File confDir,
@@ -258,4 +265,9 @@ class MockProviderService implements ProviderService {
public void addContainerRequest(AMRMClient.ContainerRequest req) {
// no-op
}
+
+ @Override
+ void rebuildContainerDetails(List<Container> liveContainers, String applicationId,
+ Map<Integer, ProviderRole> roleProviderMap) {
+ }
}
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/58014d80/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
----------------------------------------------------------------------
diff --git a/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java b/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
index d16603f..a9b9e99 100644
--- a/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
+++ b/slider-core/src/test/java/org/apache/slider/providers/agent/TestAgentProviderService.java
@@ -18,6 +18,7 @@
package org.apache.slider.providers.agent;
+import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.FilterFileSystem;
import org.apache.hadoop.fs.Path;
@@ -34,7 +35,7 @@ import org.apache.slider.api.ClusterDescription;
import org.apache.slider.api.ClusterDescriptionKeys;
import org.apache.slider.api.ClusterNode;
import org.apache.slider.api.OptionKeys;
-import org.apache.slider.api.StatusKeys;
+import org.apache.slider.common.SliderXmlConfKeys;
import org.apache.slider.common.tools.SliderFileSystem;
import org.apache.slider.core.conf.AggregateConf;
import org.apache.slider.core.conf.ConfTree;
@@ -254,6 +255,10 @@ public class TestAgentProviderService {
metainfo.setApplication(new Application());
doReturn(metainfo).when(mockAps).getApplicationMetainfo(any(SliderFileSystem.class), anyString());
+ Configuration conf = new Configuration();
+ conf.set(SliderXmlConfKeys.REGISTRY_PATH,
+ SliderXmlConfKeys.DEFAULT_REGISTRY_PATH);
+
try {
doReturn(true).when(mockAps).isMaster(anyString());
doNothing().when(mockAps).addInstallCommand(
@@ -261,21 +266,22 @@ public class TestAgentProviderService {
eq("mockcontainer_1"),
any(HeartBeatResponse.class),
eq("scripts/hbase_master.py"));
+ doReturn(conf).when(mockAps).getConfig();
} catch (SliderException e) {
}
expect(access.isApplicationLive()).andReturn(true).anyTimes();
ClusterDescription desc = new ClusterDescription();
- desc.setInfo(StatusKeys.INFO_AM_HOSTNAME, "host1");
- desc.setInfo(StatusKeys.INFO_AM_AGENT_PORT, "8088");
- desc.setInfo(StatusKeys.INFO_AM_SECURED_AGENT_PORT, "8089");
+ desc.setOption(OptionKeys.ZOOKEEPER_QUORUM, "host1:2181");
desc.setInfo(OptionKeys.APPLICATION_NAME, "HBASE");
expect(access.getClusterStatus()).andReturn(desc).anyTimes();
AggregateConf aggConf = new AggregateConf();
ConfTreeOperations treeOps = aggConf.getAppConfOperations();
treeOps.getOrAddComponent("HBASE_MASTER").put(AgentKeys.WAIT_HEARTBEAT, "0");
+ treeOps.set(OptionKeys.APPLICATION_NAME, "HBASE");
expect(access.getInstanceDefinitionSnapshot()).andReturn(aggConf);
+ expect(access.getInternalsSnapshot()).andReturn(treeOps).anyTimes();
replay(access, ctx, container, sliderFileSystem);
try {
@@ -614,6 +620,10 @@ public class TestAgentProviderService {
doReturn(access).when(mockAps).getAmState();
doReturn(metainfo).when(mockAps).getApplicationMetainfo(any(SliderFileSystem.class), anyString());
+ Configuration conf = new Configuration();
+ conf.set(SliderXmlConfKeys.REGISTRY_PATH,
+ SliderXmlConfKeys.DEFAULT_REGISTRY_PATH);
+
try {
doReturn(true).when(mockAps).isMaster(anyString());
doNothing().when(mockAps).addInstallCommand(
@@ -634,15 +644,13 @@ public class TestAgentProviderService {
anyString(),
anyString(),
anyCollection());
-
+ doReturn(conf).when(mockAps).getConfig();
} catch (SliderException e) {
}
expect(access.isApplicationLive()).andReturn(true).anyTimes();
ClusterDescription desc = new ClusterDescription();
- desc.setInfo(StatusKeys.INFO_AM_HOSTNAME, "host1");
- desc.setInfo(StatusKeys.INFO_AM_AGENT_PORT, "8088");
- desc.setInfo(StatusKeys.INFO_AM_SECURED_AGENT_PORT, "8089");
+ desc.setOption(OptionKeys.ZOOKEEPER_QUORUM, "host1:2181");
desc.setInfo(OptionKeys.APPLICATION_NAME, "HBASE");
expect(access.getClusterStatus()).andReturn(desc).anyTimes();
@@ -650,7 +658,9 @@ public class TestAgentProviderService {
ConfTreeOperations treeOps = aggConf.getAppConfOperations();
treeOps.getOrAddComponent("HBASE_MASTER").put(AgentKeys.WAIT_HEARTBEAT, "0");
treeOps.getOrAddComponent("HBASE_REGIONSERVER").put(AgentKeys.WAIT_HEARTBEAT, "0");
+ treeOps.set(OptionKeys.APPLICATION_NAME, "HBASE");
expect(access.getInstanceDefinitionSnapshot()).andReturn(aggConf).anyTimes();
+ expect(access.getInternalsSnapshot()).andReturn(treeOps).anyTimes();
replay(access, ctx, container, sliderFileSystem);
// build two containers
http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/58014d80/slider-core/src/test/python/agent/main.py
----------------------------------------------------------------------
diff --git a/slider-core/src/test/python/agent/main.py b/slider-core/src/test/python/agent/main.py
index 8b7044e..e50642d 100755
--- a/slider-core/src/test/python/agent/main.py
+++ b/slider-core/src/test/python/agent/main.py
@@ -34,9 +34,8 @@ def main():
parser.add_option("--config", dest="conf_folder", help="conf folder")
parser.add_option('--command', dest='command', help='command to execute')
parser.add_option('--label', dest='label', help='label')
- parser.add_option('--host', dest='host', help='port')
- parser.add_option('--port', dest='port', help='host')
- parser.add_option('--secured_port', dest='secured_port', help='host')
+ parser.add_option('--zk-quorum', dest='host:2181', help='zookeeper quorum')
+ parser.add_option('--zk-reg-path', dest='/register/org-apache-slider/cl1', help='zookeeper registry path')
(options, args) = parser.parse_args()