http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java index 0fdaa46..098efa9 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/AmbariManagementControllerTest.java @@ -122,7 +122,6 @@ import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; import org.apache.ambari.server.state.ConfigFactory; import org.apache.ambari.server.state.ConfigHelper; -import org.apache.ambari.server.state.ConfigImpl; import org.apache.ambari.server.state.Host; import org.apache.ambari.server.state.HostComponentAdminState; import org.apache.ambari.server.state.HostState; @@ -1933,10 +1932,8 @@ public class AmbariManagementControllerTest { Map<String, String> properties = new HashMap<String, String>(); Map<String, Map<String, String>> propertiesAttributes = new HashMap<String, Map<String,String>>(); - Config c1 = new ConfigImpl(cluster, "hdfs-site", properties, propertiesAttributes, injector); - c1.setTag("v1"); - cluster.addConfig(c1); - c1.persist(); + ConfigFactory configFactory = injector.getInstance(ConfigFactory.class); + Config c1 = configFactory.createNew(cluster, "hdfs-site", "v1", properties, propertiesAttributes); configs.put(c1.getType(), c1); ServiceRequest r = new ServiceRequest(cluster1, serviceName, State.INSTALLED.toString()); @@ -1976,26 +1973,17 @@ public class AmbariManagementControllerTest { properties.put("a", "a1"); properties.put("b", "b1"); - Config c1 = new ConfigImpl(cluster, "hdfs-site", properties, propertiesAttributes, injector); + ConfigFactory configFactory = injector.getInstance(ConfigFactory.class); + Config c1 = configFactory.createNew(cluster, "hdfs-site", "v1", properties, propertiesAttributes); properties.put("c", cluster1); properties.put("d", "d1"); - Config c2 = new ConfigImpl(cluster, "core-site", properties, propertiesAttributes, injector); - Config c3 = new ConfigImpl(cluster, "foo-site", properties, propertiesAttributes, injector); + + Config c2 = configFactory.createNew(cluster, "core-site", "v1", properties, propertiesAttributes); + Config c3 = configFactory.createNew(cluster, "foo-site", "v1", properties, propertiesAttributes); Map<String, String> mapRequestProps = new HashMap<String, String>(); mapRequestProps.put("context", "Called from a test"); - c1.setTag("v1"); - c2.setTag("v1"); - c3.setTag("v1"); - - cluster.addConfig(c1); - cluster.addConfig(c2); - cluster.addConfig(c3); - c1.persist(); - c2.persist(); - c3.persist(); - configs.put(c1.getType(), c1); configs.put(c2.getType(), c2); @@ -4203,27 +4191,20 @@ public class AmbariManagementControllerTest { cluster.setCurrentStackVersion(new StackId("HDP-2.0.6")); ConfigFactory cf = injector.getInstance(ConfigFactory.class); - Config config1 = cf.createNew(cluster, "global", + Config config1 = cf.createNew(cluster, "global", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String, String>>()); - config1.setTag("version1"); - Config config2 = cf.createNew(cluster, "core-site", + Config config2 = cf.createNew(cluster, "core-site", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config2.setTag("version1"); - Config config3 = cf.createNew(cluster, "yarn-site", + Config config3 = cf.createNew(cluster, "yarn-site", "version1", new HashMap<String, String>() {{ put("test.password", "supersecret"); }}, new HashMap<String, Map<String,String>>()); - config3.setTag("version1"); - - cluster.addConfig(config1); - cluster.addConfig(config2); - cluster.addConfig(config3); Service hdfs = cluster.addService("HDFS"); Service mapred = cluster.addService("YARN"); @@ -4376,20 +4357,15 @@ public class AmbariManagementControllerTest { cluster.setCurrentStackVersion(new StackId("HDP-2.0.7")); ConfigFactory cf = injector.getInstance(ConfigFactory.class); - Config config1 = cf.createNew(cluster, "global", + Config config1 = cf.createNew(cluster, "global", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config1.setTag("version1"); - Config config2 = cf.createNew(cluster, "core-site", + Config config2 = cf.createNew(cluster, "core-site", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config2.setTag("version1"); - - cluster.addConfig(config1); - cluster.addConfig(config2); Service hdfs = cluster.addService("HDFS"); @@ -4481,19 +4457,15 @@ public class AmbariManagementControllerTest { cluster.setCurrentStackVersion(new StackId("HDP-2.0.7")); ConfigFactory cf = injector.getInstance(ConfigFactory.class); - Config config1 = cf.createNew(cluster, "global", + Config config1 = cf.createNew(cluster, "global", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config1.setTag("version1"); - Config config2 = cf.createNew(cluster, "core-site", + Config config2 = cf.createNew(cluster, "core-site", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config2.setTag("version1"); - config1.persist(); - config2.persist(); cluster.addConfig(config1); cluster.addConfig(config2); @@ -4769,18 +4741,14 @@ public class AmbariManagementControllerTest { cluster.setCurrentStackVersion(new StackId("HDP-0.1")); ConfigFactory cf = injector.getInstance(ConfigFactory.class); - Config config1 = cf.createNew(cluster, "global", + Config config1 = cf.createNew(cluster, "global", "version1", new HashMap<String, String>(){{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config1.setTag("version1"); config1.setPropertiesAttributes(new HashMap<String, Map<String, String>>(){{ put("attr1", new HashMap<String, String>()); }}); - Config config2 = cf.createNew(cluster, "core-site", + Config config2 = cf.createNew(cluster, "core-site", "version1", new HashMap<String, String>(){{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config2.setTag("version1"); config2.setPropertiesAttributes(new HashMap<String, Map<String, String>>(){{ put("attr2", new HashMap<String, String>()); }}); - cluster.addConfig(config1); - cluster.addConfig(config2); cluster.addDesiredConfig("_test", Collections.singleton(config1)); cluster.addDesiredConfig("_test", Collections.singleton(config2)); @@ -5515,11 +5483,8 @@ public class AmbariManagementControllerTest { configs3, null); ConfigFactory cf = injector.getInstance(ConfigFactory.class); - Config config1 = cf.createNew(cluster, "kerberos-env", + Config config1 = cf.createNew(cluster, "kerberos-env", "version1", new HashMap<String, String>(), new HashMap<String, Map<String,String>>()); - config1.setTag("version1"); - - cluster.addConfig(config1); ClusterRequest crReq = new ClusterRequest(cluster.getClusterId(), cluster1, null, null); crReq.setDesiredConfig(Collections.singletonList(cr1)); @@ -6441,20 +6406,15 @@ public class AmbariManagementControllerTest { cluster.setCurrentStackVersion(new StackId("HDP-2.0.6")); ConfigFactory cf = injector.getInstance(ConfigFactory.class); - Config config1 = cf.createNew(cluster, "global", + Config config1 = cf.createNew(cluster, "global", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config1.setTag("version1"); - Config config2 = cf.createNew(cluster, "core-site", + Config config2 = cf.createNew(cluster, "core-site", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config2.setTag("version1"); - - cluster.addConfig(config1); - cluster.addConfig(config2); Service hdfs = cluster.addService("HDFS"); Service mapred = cluster.addService("YARN"); @@ -6547,20 +6507,15 @@ public class AmbariManagementControllerTest { cluster.setCurrentStackVersion(new StackId("HDP-2.0.6")); ConfigFactory cf = injector.getInstance(ConfigFactory.class); - Config config1 = cf.createNew(cluster, "global", + Config config1 = cf.createNew(cluster, "global", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config1.setTag("version1"); - Config config2 = cf.createNew(cluster, "core-site", + Config config2 = cf.createNew(cluster, "core-site", "version1", new HashMap<String, String>() {{ put("key1", "value1"); }}, new HashMap<String, Map<String,String>>()); - config2.setTag("version1"); - - cluster.addConfig(config1); - cluster.addConfig(config2); Service hdfs = cluster.addService("HDFS"); Service mapred = cluster.addService("YARN"); @@ -6974,13 +6929,13 @@ public class AmbariManagementControllerTest { String group2 = getUniqueName(); String tag2 = getUniqueName(); + ConfigFactory configFactory = injector.getInstance(ConfigFactory.class); + // Create Config group for core-site configs = new HashMap<String, String>(); configs.put("a", "c"); cluster = clusters.getCluster(cluster1); - final Config config = new ConfigImpl("core-site"); - config.setProperties(configs); - config.setTag("version122"); + final Config config = configFactory.createReadOnly("core-site", "version122", configs, null); Long groupId = createConfigGroup(cluster, group1, tag1, new ArrayList<String>() {{ add(host1); }}, new ArrayList<Config>() {{ add(config); }}); @@ -6991,9 +6946,7 @@ public class AmbariManagementControllerTest { configs = new HashMap<String, String>(); configs.put("a", "c"); - final Config config2 = new ConfigImpl("mapred-site"); - config2.setProperties(configs); - config2.setTag("version122"); + final Config config2 = configFactory.createReadOnly("mapred-site", "version122", configs, null); groupId = createConfigGroup(cluster, group2, tag2, new ArrayList<String>() {{ add(host1); }}, new ArrayList<Config>() {{ add(config2); }}); @@ -7136,9 +7089,8 @@ public class AmbariManagementControllerTest { String group1 = getUniqueName(); String tag1 = getUniqueName(); - final Config config = new ConfigImpl("hdfs-site"); - config.setProperties(configs); - config.setTag("version122"); + ConfigFactory configFactory = injector.getInstance(ConfigFactory.class); + final Config config = configFactory.createReadOnly("hdfs-site", "version122", configs, null); Long groupId = createConfigGroup(clusters.getCluster(cluster1), group1, tag1, new ArrayList<String>() {{ add(host1); @@ -7246,9 +7198,8 @@ public class AmbariManagementControllerTest { configs = new HashMap<String, String>(); configs.put("a", "c"); - final Config config = new ConfigImpl("hdfs-site"); - config.setProperties(configs); - config.setTag("version122"); + ConfigFactory configFactory = injector.getInstance(ConfigFactory.class); + final Config config = configFactory.createReadOnly("hdfs-site", "version122", configs, null); Long groupId = createConfigGroup(clusters.getCluster(cluster1), group1, tag1, new ArrayList<String>() {{ add(host1); add(host2); }}, new ArrayList<Config>() {{ add(config); }});
http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java index 96810cf..1747b28 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderHDP22Test.java @@ -66,7 +66,7 @@ import org.apache.ambari.server.security.authorization.RoleAuthorization; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; +import org.apache.ambari.server.state.ConfigFactory; import org.apache.ambari.server.state.Host; import org.apache.ambari.server.state.HostState; import org.apache.ambari.server.state.RepositoryVersionState; @@ -108,6 +108,7 @@ public class UpgradeResourceProviderHDP22Test { private AmbariManagementController amc; private StackDAO stackDAO; private TopologyManager topologyManager; + private ConfigFactory configFactory; private static final String configTagVersion1 = "version1"; private static final String configTagVersion2 = "version2"; @@ -136,6 +137,7 @@ public class UpgradeResourceProviderHDP22Test { stackDAO = injector.getInstance(StackDAO.class); upgradeDao = injector.getInstance(UpgradeDAO.class); repoVersionDao = injector.getInstance(RepositoryVersionDAO.class); + configFactory = injector.getInstance(ConfigFactory.class); AmbariEventPublisher publisher = createNiceMock(AmbariEventPublisher.class); replay(publisher); @@ -233,11 +235,7 @@ public class UpgradeResourceProviderHDP22Test { } } - Config config = new ConfigImpl("hive-site"); - config.setProperties(configTagVersion1Properties); - config.setTag(configTagVersion1); - - cluster.addConfig(config); + Config config = configFactory.createNew(cluster, "hive-site", configTagVersion1, configTagVersion1Properties, null); cluster.addDesiredConfig("admin", Collections.singleton(config)); Map<String, Object> requestProps = new HashMap<String, Object>(); @@ -286,9 +284,7 @@ public class UpgradeResourceProviderHDP22Test { // Hive service checks have generated the ExecutionCommands by now. // Change the new desired config tag and verify execution command picks up new tag assertEquals(configTagVersion1, cluster.getDesiredConfigByType("hive-site").getTag()); - final Config newConfig = new ConfigImpl("hive-site"); - newConfig.setProperties(configTagVersion2Properties); - newConfig.setTag(configTagVersion2); + final Config newConfig = configFactory.createNew(cluster, "hive-site", configTagVersion2, configTagVersion2Properties, null); Set<Config> desiredConfigs = new HashSet<Config>() { { add(newConfig); http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderTest.java b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderTest.java index 14e3d08..ae99ee6 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeResourceProviderTest.java @@ -85,8 +85,8 @@ import org.apache.ambari.server.serveraction.upgrades.AutoSkipFailedSummaryActio import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; +import org.apache.ambari.server.state.ConfigFactory; import org.apache.ambari.server.state.ConfigHelper; -import org.apache.ambari.server.state.ConfigImpl; import org.apache.ambari.server.state.DesiredConfig; import org.apache.ambari.server.state.Host; import org.apache.ambari.server.state.HostState; @@ -144,6 +144,7 @@ public class UpgradeResourceProviderTest { private StackDAO stackDAO; private AmbariMetaInfo ambariMetaInfo; private TopologyManager topologyManager; + private ConfigFactory configFactory; @Before public void before() throws Exception { @@ -174,6 +175,7 @@ public class UpgradeResourceProviderTest { amc = injector.getInstance(AmbariManagementController.class); ambariMetaInfo = injector.getInstance(AmbariMetaInfo.class); + configFactory = injector.getInstance(ConfigFactory.class); Field field = AmbariServer.class.getDeclaredField("clusterController"); field.setAccessible(true); @@ -1046,16 +1048,9 @@ public class UpgradeResourceProviderTest { } - Config config = new ConfigImpl("zoo.cfg"); - config.setProperties(new HashMap<String, String>() {{ - put("a", "b"); - }}); - config.setTag("abcdefg"); - - cluster.addConfig(config); + Config config = configFactory.createNew(cluster, "zoo.cfg", "abcdefg", Collections.singletonMap("a", "b"), null); cluster.addDesiredConfig("admin", Collections.singleton(config)); - Map<String, Object> requestProps = new HashMap<String, Object>(); requestProps.put(UpgradeResourceProvider.UPGRADE_CLUSTER_NAME, "c1"); requestProps.put(UpgradeResourceProvider.UPGRADE_VERSION, "2.2.0.0"); @@ -1249,7 +1244,7 @@ public class UpgradeResourceProviderTest { Map<String, String> map = gson.<Map<String, String>> fromJson(se.getCommandParamsStage(),Map.class); assertTrue(map.containsKey("upgrade_direction")); assertEquals("upgrade", map.get("upgrade_direction")); - + if(map.containsKey("upgrade_type")){ assertEquals("rolling_upgrade", map.get("upgrade_type")); } http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java index 0163024..80a3bc5 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ComponentVersionCheckActionTest.java @@ -49,8 +49,7 @@ import org.apache.ambari.server.orm.entities.HostVersionEntity; import org.apache.ambari.server.orm.entities.StackEntity; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; -import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; +import org.apache.ambari.server.state.ConfigFactory; import org.apache.ambari.server.state.Host; import org.apache.ambari.server.state.RepositoryInfo; import org.apache.ambari.server.state.RepositoryVersionState; @@ -113,6 +112,9 @@ public class ComponentVersionCheckActionTest { @Inject private ServiceComponentHostFactory serviceComponentHostFactory; + @Inject + private ConfigFactory configFactory; + @Before public void setup() throws Exception { m_injector = Guice.createInjector(new InMemoryDefaultTestModule()); @@ -399,18 +401,11 @@ public class ComponentVersionCheckActionTest { properties.put("a", "a1"); properties.put("b", "b1"); - Config c1 = new ConfigImpl(cluster, "hdfs-site", properties, propertiesAttributes, m_injector); + configFactory.createNew(cluster, "hdfs-site", "version1", properties, propertiesAttributes); properties.put("c", "c1"); properties.put("d", "d1"); - Config c2 = new ConfigImpl(cluster, "core-site", properties, propertiesAttributes, m_injector); - Config c3 = new ConfigImpl(cluster, "foo-site", properties, propertiesAttributes, m_injector); - - cluster.addConfig(c1); - cluster.addConfig(c2); - cluster.addConfig(c3); - c1.persist(); - c2.persist(); - c3.persist(); + configFactory.createNew(cluster, "core-site", "version1", properties, propertiesAttributes); + configFactory.createNew(cluster, "foo-site", "version1", properties, propertiesAttributes); } } http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java index 7ab2856..92fa084 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/ConfigureActionTest.java @@ -132,13 +132,10 @@ public class ConfigureActionTest { c.setCurrentStackVersion(HDP_211_STACK); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() {{ + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() {{ put("initLimit", "10"); }}, new HashMap<String, Map<String,String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -196,16 +193,13 @@ public class ConfigureActionTest { // create a config for zoo.cfg with two values; one is a stack value and the // other is custom - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("tickTime", "2000"); put("foo", "bar"); } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -262,16 +256,13 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() {{ + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() {{ put("initLimit", "10"); put("copyIt", "10"); put("moveIt", "10"); put("deleteIt", "10"); }}, new HashMap<String, Map<String,String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -402,15 +393,12 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("zoo.server.csv", "c6401,c6402, c6403"); } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -468,16 +456,13 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("key_to_replace", "My New Cat"); put("key_with_no_match", "WxyAndZ"); } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -543,16 +528,13 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("existing", "This exists!"); put("missing", null); } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -604,16 +586,12 @@ public class ConfigureActionTest { c.setCurrentStackVersion(HDP_211_STACK); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("fooKey", "barValue"); } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -671,7 +649,7 @@ public class ConfigureActionTest { c.setCurrentStackVersion(HDP_211_STACK); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("set.key.1", "s1"); put("set.key.2", "s2"); @@ -680,10 +658,6 @@ public class ConfigureActionTest { } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -769,7 +743,7 @@ public class ConfigureActionTest { c.setCurrentStackVersion(HDP_211_STACK); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("set.key.1", "s1"); put("set.key.2", "s2"); @@ -778,10 +752,6 @@ public class ConfigureActionTest { } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -855,7 +825,7 @@ public class ConfigureActionTest { c.setCurrentStackVersion(HDP_211_STACK); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("replace.key.1", "r1"); put("replace.key.2", "r2"); @@ -865,10 +835,6 @@ public class ConfigureActionTest { } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -951,7 +917,7 @@ public class ConfigureActionTest { c.setCurrentStackVersion(HDP_211_STACK); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() { { put("replace.key.1", "r1"); put("replace.key.2", "r2"); @@ -961,10 +927,6 @@ public class ConfigureActionTest { } }, new HashMap<String, Map<String, String>>()); - config.setTag("version2"); - config.persist(); - - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -1041,15 +1003,12 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() {{ + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() {{ put("initLimit", "10"); put("copy.key.1", "c1"); put("copy.key.2", "c2"); }}, new HashMap<String, Map<String,String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -1157,15 +1116,12 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() {{ + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() {{ put("initLimit", "10"); put("copy.key.1", "c1"); put("copy.key.2", "c2"); }}, new HashMap<String, Map<String,String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -1253,17 +1209,14 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() {{ + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() {{ put("initLimit", "10"); put("move.key.1", "m1"); put("move.key.2", "m2"); put("move.key.3", "m3"); put("move.key.4", "m4"); }}, new HashMap<String, Map<String,String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -1362,17 +1315,15 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() {{ + Config config = cf.createNew(c, "zoo.cfg", "version2", + new HashMap<String, String>() {{ put("initLimit", "10"); put("move.key.1", "m1"); put("move.key.2", "m2"); put("move.key.3", "m3"); put("move.key.4", "m4"); }}, new HashMap<String, Map<String,String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -1466,17 +1417,14 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() {{ + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() {{ put("initLimit", "10"); put("delete.key.1", "d1"); put("delete.key.2", "d2"); put("delete.key.3", "d3"); put("delete.key.4", "d4"); }}, new HashMap<String, Map<String,String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -1567,17 +1515,14 @@ public class ConfigureActionTest { assertEquals(1, c.getConfigsByType("zoo.cfg").size()); c.setDesiredStackVersion(HDP_220_STACK); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() {{ + Config config = cf.createNew(c, "zoo.cfg", "version2", new HashMap<String, String>() {{ put("initLimit", "10"); put("delete.key.1", "d1"); put("delete.key.2", "d2"); put("delete.key.3", "d3"); put("delete.key.4", "d4"); }}, new HashMap<String, Map<String,String>>()); - config.setTag("version2"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); assertEquals(2, c.getConfigsByType("zoo.cfg").size()); @@ -1674,15 +1619,12 @@ public class ConfigureActionTest { // service properties will not run! installService(c, "ZOOKEEPER"); - Config config = cf.createNew(c, "zoo.cfg", new HashMap<String, String>() { + Config config = cf.createNew(c, "zoo.cfg", "version1", new HashMap<String, String>() { { put("initLimit", "10"); } }, new HashMap<String, Map<String, String>>()); - config.setTag("version1"); - config.persist(); - c.addConfig(config); c.addDesiredConfig("user", Collections.singleton(config)); // add a host component http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/FixOozieAdminUsersTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/FixOozieAdminUsersTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/FixOozieAdminUsersTest.java index 314e955..d4c90b8 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/FixOozieAdminUsersTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/FixOozieAdminUsersTest.java @@ -17,7 +17,16 @@ */ package org.apache.ambari.server.serveraction.upgrades; -import com.google.inject.Injector; +import static org.easymock.EasyMock.anyObject; +import static org.easymock.EasyMock.expect; +import static org.easymock.EasyMock.replay; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; + +import java.lang.reflect.Field; +import java.util.HashMap; +import java.util.Map; + import org.apache.ambari.server.actionmanager.ExecutionCommandWrapper; import org.apache.ambari.server.actionmanager.HostRoleCommand; import org.apache.ambari.server.agent.CommandReport; @@ -25,18 +34,11 @@ import org.apache.ambari.server.agent.ExecutionCommand; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; -import java.lang.reflect.Field; -import java.util.HashMap; -import java.util.Map; - -import static org.easymock.EasyMock.*; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; +import com.google.inject.Injector; /** * Tests OozieConfigCalculation logic @@ -53,52 +55,28 @@ public class FixOozieAdminUsersTest { clusters = EasyMock.createMock(Clusters.class); cluster = EasyMock.createMock(Cluster.class); + Map<String, String> mockProperties = new HashMap<String, String>() {{ + put("falcon_user", "falcon"); + }}; + + Config falconEnvConfig = EasyMock.createNiceMock(Config.class); + expect(falconEnvConfig.getType()).andReturn("falcon-env").anyTimes(); + expect(falconEnvConfig.getProperties()).andReturn(mockProperties).anyTimes(); + + mockProperties = new HashMap<String, String>() {{ + put("oozie_admin_users", "oozie, oozie-admin"); + }}; + + Config oozieEnvConfig = EasyMock.createNiceMock(Config.class); + expect(oozieEnvConfig.getType()).andReturn("oozie-env").anyTimes(); + expect(oozieEnvConfig.getProperties()).andReturn(mockProperties).anyTimes(); - Config falconEnvConfig = new ConfigImpl("falcon-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("falcon_user", "falcon"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; - Config oozieEnvConfig = new ConfigImpl("oozie-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("oozie_admin_users", "oozie, oozie-admin"); - }}; - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; expect(cluster.getDesiredConfigByType("falcon-env")).andReturn(falconEnvConfig).atLeastOnce(); expect(cluster.getDesiredConfigByType("oozie-env")).andReturn(oozieEnvConfig).atLeastOnce(); expect(clusters.getCluster((String) anyObject())).andReturn(cluster).anyTimes(); expect(injector.getInstance(Clusters.class)).andReturn(clusters).atLeastOnce(); - replay(injector, clusters); + replay(injector, clusters, falconEnvConfig, oozieEnvConfig); clustersField = FixOozieAdminUsers.class.getDeclaredField("clusters"); clustersField.setAccessible(true); http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HBaseEnvMaxDirectMemorySizeActionTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HBaseEnvMaxDirectMemorySizeActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HBaseEnvMaxDirectMemorySizeActionTest.java index 4c1d7a3..f8a5373 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HBaseEnvMaxDirectMemorySizeActionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HBaseEnvMaxDirectMemorySizeActionTest.java @@ -17,8 +17,18 @@ */ package org.apache.ambari.server.serveraction.upgrades; -import com.google.inject.Injector; -import junit.framework.Assert; +import static org.easymock.EasyMock.anyObject; +import static org.easymock.EasyMock.expect; +import static org.easymock.EasyMock.replay; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import java.lang.reflect.Field; +import java.util.HashMap; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + import org.apache.ambari.server.actionmanager.ExecutionCommandWrapper; import org.apache.ambari.server.actionmanager.HostRoleCommand; import org.apache.ambari.server.agent.CommandReport; @@ -26,21 +36,13 @@ import org.apache.ambari.server.agent.ExecutionCommand; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; -import java.lang.reflect.Field; -import java.util.HashMap; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; +import com.google.inject.Injector; -import static org.easymock.EasyMock.*; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; +import junit.framework.Assert; /** * Tests HiveEnvClasspathAction logic @@ -55,99 +57,86 @@ public class HBaseEnvMaxDirectMemorySizeActionTest { injector = EasyMock.createMock(Injector.class); clusters = EasyMock.createMock(Clusters.class); Cluster cluster = EasyMock.createMock(Cluster.class); - - Config hbaseEnv = new ConfigImpl("hbase-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("content","# Set environment variables here.\n" + - "\n" + - "# The java implementation to use. Java 1.6 required.\n" + - "export JAVA_HOME={{java64_home}}\n" + - "\n" + - "# HBase Configuration directory\n" + - "export HBASE_CONF_DIR=${HBASE_CONF_DIR:-{{hbase_conf_dir}}}\n" + - "\n" + - "# Extra Java CLASSPATH elements. Optional.\n" + - "export HBASE_CLASSPATH=${HBASE_CLASSPATH}\n" + - "\n" + - "# The maximum amount of heap to use, in MB. Default is 1000.\n" + - "# export HBASE_HEAPSIZE=1000\n" + - "\n" + - "# Extra Java runtime options.\n" + - "# Below are what we set by default. May only work with SUN JVM.\n" + - "# For more on why as well as other possible settings,\n" + - "# see http://wiki.apache.org/hadoop/PerformanceTuning\n" + - "export SERVER_GC_OPTS=\"-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:{{log_dir}}/gc.log-`date +'%Y%m%d%H%M'`\"\n" + - "# Uncomment below to enable java garbage collection logging.\n" + - "# export HBASE_OPTS=\"$HBASE_OPTS -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:$HBASE_HOME/logs/gc-hbase.log -Djava.io.tmpdir={{java_io_tmpdir}}\"\n" + - "\n" + - "# Uncomment and adjust to enable JMX exporting\n" + - "# See jmxremote.password and jmxremote.access in $JRE_HOME/lib/management to configure remote password access.\n" + - "# More details at: http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html\n" + - "#\n" + - "# export HBASE_JMX_BASE=\"-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false\"\n" + - "# If you want to configure BucketCache, specify '-XX: MaxDirectMemorySize=' with proper direct memory size\n" + - "# export HBASE_THRIFT_OPTS=\"$HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10103\"\n" + - "# export HBASE_ZOOKEEPER_OPTS=\"$HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10104\"\n" + - "\n" + - "# File naming hosts on which HRegionServers will run. $HBASE_HOME/conf/regionservers by default.\n" + - "export HBASE_REGIONSERVERS=${HBASE_CONF_DIR}/regionservers\n" + - "\n" + - "# Extra ssh options. Empty by default.\n" + - "# export HBASE_SSH_OPTS=\"-o ConnectTimeout=1 -o SendEnv=HBASE_CONF_DIR\"\n" + - "\n" + - "# Where log files are stored. $HBASE_HOME/logs by default.\n" + - "export HBASE_LOG_DIR={{log_dir}}\n" + - "\n" + - "# A string representing this instance of hbase. $USER by default.\n" + - "# export HBASE_IDENT_STRING=$USER\n" + - "\n" + - "# The scheduling priority for daemon processes. See 'man nice'.\n" + - "# export HBASE_NICENESS=10\n" + - "\n" + - "# The directory where pid files are stored. /tmp by default.\n" + - "export HBASE_PID_DIR={{pid_dir}}\n" + - "\n" + - "# Seconds to sleep between slave commands. Unset by default. This\n" + - "# can be useful in large clusters, where, e.g., slave rsyncs can\n" + - "# otherwise arrive faster than the master can service them.\n" + - "# export HBASE_SLAVE_SLEEP=0.1\n" + - "\n" + - "# Tell HBase whether it should manage it's own instance of Zookeeper or not.\n" + - "export HBASE_MANAGES_ZK=false\n" + - "\n" + - "{% if security_enabled %}\n" + - "export HBASE_OPTS=\"$HBASE_OPTS -XX:+UseConcMarkSweepGC -XX:ErrorFile={{log_dir}}/hs_err_pid%p.log -Djava.security.auth.login.config={{client_jaas_config_file}} -Djava.io.tmpdir={{java_io_tmpdir}}\"\n" + - "export HBASE_MASTER_OPTS=\"$HBASE_MASTER_OPTS -Xmx{{master_heapsize}} -Djava.security.auth.login.config={{master_jaas_config_file}}\"\n" + - "export HBASE_REGIONSERVER_OPTS=\"$HBASE_REGIONSERVER_OPTS -Xmn{{regionserver_xmn_size}} -XX:CMSInitiatingOccupancyFraction=70 -Xms{{regionserver_heapsize}} -Xmx{{regionserver_heapsize}} -Djava.security.auth.login.config={{regionserver_jaas_config_file}}\"\n" + - "{% else %}\n" + - "export HBASE_OPTS=\"$HBASE_OPTS -XX:+UseConcMarkSweepGC -XX:ErrorFile={{log_dir}}/hs_err_pid%p.log -Djava.io.tmpdir={{java_io_tmpdir}}\"\n" + - "export HBASE_MASTER_OPTS=\"$HBASE_MASTER_OPTS -Xmx{{master_heapsize}}\"\n" + - "export HBASE_REGIONSERVER_OPTS=\"$HBASE_REGIONSERVER_OPTS -Xmn{{regionserver_xmn_size}} -XX:CMSInitiatingOccupancyFraction=70 -Xms{{regionserver_heapsize}} -Xmx{{regionserver_heapsize}}\"\n" + - "{% endif %}"); - }}; - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; - + Config hbaseEnv = EasyMock.createNiceMock(Config.class); + + Map<String, String> mockProperties = new HashMap<String, String>() {{ + put("content","# Set environment variables here.\n" + + "\n" + + "# The java implementation to use. Java 1.6 required.\n" + + "export JAVA_HOME={{java64_home}}\n" + + "\n" + + "# HBase Configuration directory\n" + + "export HBASE_CONF_DIR=${HBASE_CONF_DIR:-{{hbase_conf_dir}}}\n" + + "\n" + + "# Extra Java CLASSPATH elements. Optional.\n" + + "export HBASE_CLASSPATH=${HBASE_CLASSPATH}\n" + + "\n" + + "# The maximum amount of heap to use, in MB. Default is 1000.\n" + + "# export HBASE_HEAPSIZE=1000\n" + + "\n" + + "# Extra Java runtime options.\n" + + "# Below are what we set by default. May only work with SUN JVM.\n" + + "# For more on why as well as other possible settings,\n" + + "# see http://wiki.apache.org/hadoop/PerformanceTuning\n" + + "export SERVER_GC_OPTS=\"-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:{{log_dir}}/gc.log-`date +'%Y%m%d%H%M'`\"\n" + + "# Uncomment below to enable java garbage collection logging.\n" + + "# export HBASE_OPTS=\"$HBASE_OPTS -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -Xloggc:$HBASE_HOME/logs/gc-hbase.log -Djava.io.tmpdir={{java_io_tmpdir}}\"\n" + + "\n" + + "# Uncomment and adjust to enable JMX exporting\n" + + "# See jmxremote.password and jmxremote.access in $JRE_HOME/lib/management to configure remote password access.\n" + + "# More details at: http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html\n" + + "#\n" + + "# export HBASE_JMX_BASE=\"-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false\"\n" + + "# If you want to configure BucketCache, specify '-XX: MaxDirectMemorySize=' with proper direct memory size\n" + + "# export HBASE_THRIFT_OPTS=\"$HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10103\"\n" + + "# export HBASE_ZOOKEEPER_OPTS=\"$HBASE_JMX_BASE -Dcom.sun.management.jmxremote.port=10104\"\n" + + "\n" + + "# File naming hosts on which HRegionServers will run. $HBASE_HOME/conf/regionservers by default.\n" + + "export HBASE_REGIONSERVERS=${HBASE_CONF_DIR}/regionservers\n" + + "\n" + + "# Extra ssh options. Empty by default.\n" + + "# export HBASE_SSH_OPTS=\"-o ConnectTimeout=1 -o SendEnv=HBASE_CONF_DIR\"\n" + + "\n" + + "# Where log files are stored. $HBASE_HOME/logs by default.\n" + + "export HBASE_LOG_DIR={{log_dir}}\n" + + "\n" + + "# A string representing this instance of hbase. $USER by default.\n" + + "# export HBASE_IDENT_STRING=$USER\n" + + "\n" + + "# The scheduling priority for daemon processes. See 'man nice'.\n" + + "# export HBASE_NICENESS=10\n" + + "\n" + + "# The directory where pid files are stored. /tmp by default.\n" + + "export HBASE_PID_DIR={{pid_dir}}\n" + + "\n" + + "# Seconds to sleep between slave commands. Unset by default. This\n" + + "# can be useful in large clusters, where, e.g., slave rsyncs can\n" + + "# otherwise arrive faster than the master can service them.\n" + + "# export HBASE_SLAVE_SLEEP=0.1\n" + + "\n" + + "# Tell HBase whether it should manage it's own instance of Zookeeper or not.\n" + + "export HBASE_MANAGES_ZK=false\n" + + "\n" + + "{% if security_enabled %}\n" + + "export HBASE_OPTS=\"$HBASE_OPTS -XX:+UseConcMarkSweepGC -XX:ErrorFile={{log_dir}}/hs_err_pid%p.log -Djava.security.auth.login.config={{client_jaas_config_file}} -Djava.io.tmpdir={{java_io_tmpdir}}\"\n" + + "export HBASE_MASTER_OPTS=\"$HBASE_MASTER_OPTS -Xmx{{master_heapsize}} -Djava.security.auth.login.config={{master_jaas_config_file}}\"\n" + + "export HBASE_REGIONSERVER_OPTS=\"$HBASE_REGIONSERVER_OPTS -Xmn{{regionserver_xmn_size}} -XX:CMSInitiatingOccupancyFraction=70 -Xms{{regionserver_heapsize}} -Xmx{{regionserver_heapsize}} -Djava.security.auth.login.config={{regionserver_jaas_config_file}}\"\n" + + "{% else %}\n" + + "export HBASE_OPTS=\"$HBASE_OPTS -XX:+UseConcMarkSweepGC -XX:ErrorFile={{log_dir}}/hs_err_pid%p.log -Djava.io.tmpdir={{java_io_tmpdir}}\"\n" + + "export HBASE_MASTER_OPTS=\"$HBASE_MASTER_OPTS -Xmx{{master_heapsize}}\"\n" + + "export HBASE_REGIONSERVER_OPTS=\"$HBASE_REGIONSERVER_OPTS -Xmn{{regionserver_xmn_size}} -XX:CMSInitiatingOccupancyFraction=70 -Xms{{regionserver_heapsize}} -Xmx{{regionserver_heapsize}}\"\n" + + "{% endif %}"); + }}; + + expect(hbaseEnv.getType()).andReturn("hbase-env").anyTimes(); + expect(hbaseEnv.getProperties()).andReturn(mockProperties).anyTimes(); expect(cluster.getDesiredConfigByType("hbase-env")).andReturn(hbaseEnv).atLeastOnce(); expect(clusters.getCluster((String) anyObject())).andReturn(cluster).anyTimes(); expect(injector.getInstance(Clusters.class)).andReturn(clusters).atLeastOnce(); - replay(injector, clusters, cluster); + replay(injector, clusters, cluster, hbaseEnv); m_clusterField = HBaseEnvMaxDirectMemorySizeAction.class.getDeclaredField("clusters"); m_clusterField.setAccessible(true); http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveEnvClasspathActionTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveEnvClasspathActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveEnvClasspathActionTest.java index 9bde631..8926203 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveEnvClasspathActionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveEnvClasspathActionTest.java @@ -17,8 +17,18 @@ */ package org.apache.ambari.server.serveraction.upgrades; -import com.google.inject.Injector; -import junit.framework.Assert; +import static org.easymock.EasyMock.anyObject; +import static org.easymock.EasyMock.expect; +import static org.easymock.EasyMock.replay; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import java.lang.reflect.Field; +import java.util.HashMap; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + import org.apache.ambari.server.actionmanager.ExecutionCommandWrapper; import org.apache.ambari.server.actionmanager.HostRoleCommand; import org.apache.ambari.server.agent.CommandReport; @@ -26,22 +36,13 @@ import org.apache.ambari.server.agent.ExecutionCommand; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; -import java.lang.reflect.Field; -import java.util.HashMap; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; +import com.google.inject.Injector; -import static org.easymock.EasyMock.anyObject; -import static org.easymock.EasyMock.expect; -import static org.easymock.EasyMock.replay; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNotNull; +import junit.framework.Assert; /** * Tests HiveEnvClasspathAction logic @@ -57,79 +58,66 @@ public class HiveEnvClasspathActionTest { m_clusters = EasyMock.createMock(Clusters.class); Cluster cluster = EasyMock.createMock(Cluster.class); - Config hiveEnv = new ConfigImpl("hive-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("content", " export HADOOP_USER_CLASSPATH_FIRST=true #this prevents old metrics libs from mapreduce lib from bringing in old jar deps overriding HIVE_LIB\n" + - " if [ \"$SERVICE\" = \"cli\" ]; then\n" + - " if [ -z \"$DEBUG\" ]; then\n" + - " export HADOOP_OPTS=\"$HADOOP_OPTS -XX:NewRatio=12 -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:+UseNUMA -XX:+UseParallelGC -XX:-UseGCOverheadLimit\"\n" + - " else\n" + - " export HADOOP_OPTS=\"$HADOOP_OPTS -XX:NewRatio=12 -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:-UseGCOverheadLimit\"\n" + - " fi\n" + - " fi\n" + - "\n" + - " # The heap size of the jvm stared by hive shell script can be controlled via:\n" + - "\n" + - " if [ \"$SERVICE\" = \"metastore\" ]; then\n" + - " export HADOOP_HEAPSIZE={{hive_metastore_heapsize}} # Setting for HiveMetastore\n" + - " else\n" + - " export HADOOP_HEAPSIZE={{hive_heapsize}} # Setting for HiveServer2 and Client\n" + - " fi\n" + - "\n" + - " export HADOOP_CLIENT_OPTS=\"$HADOOP_CLIENT_OPTS -Xmx${HADOOP_HEAPSIZE}m\"\n" + - "\n" + - " # Larger heap size may be required when running queries over large number of files or partitions.\n" + - " # By default hive shell scripts use a heap size of 256 (MB). Larger heap size would also be\n" + - " # appropriate for hive server (hwi etc).\n" + - "\n" + - "\n" + - " # Set HADOOP_HOME to point to a specific hadoop install directory\n" + - " HADOOP_HOME=${HADOOP_HOME:-{{hadoop_home}}}\n" + - "\n" + - " # Hive Configuration Directory can be controlled by:\n" + - " export HIVE_CONF_DIR=test\n" + - "\n" + - " # Folder containing extra libraries required for hive compilation/execution can be controlled by:\n" + - " if [ \"${HIVE_AUX_JARS_PATH}\" != \"\" ]; then\n" + - " if [ -f \"${HIVE_AUX_JARS_PATH}\" ]; then\n" + - " export HIVE_AUX_JARS_PATH=${HIVE_AUX_JARS_PATH}\n" + - " elif [ -d \"/usr/hdp/current/hive-webhcat/share/hcatalog\" ]; then\n" + - " export HIVE_AUX_JARS_PATH=/usr/hdp/current/hive-webhcat/share/hcatalog/hive-hcatalog-core.jar\n" + - " fi\n" + - " elif [ -d \"/usr/hdp/current/hive-webhcat/share/hcatalog\" ]; then\n" + - " export HIVE_AUX_JARS_PATH=/usr/hdp/current/hive-webhcat/share/hcatalog/hive-hcatalog-core.jar\n" + - " fi\n" + - "\n" + - " export METASTORE_PORT={{hive_metastore_port}}\n" + - "\n" + - " {% if sqla_db_used or lib_dir_available %}\n" + - " export LD_LIBRARY_PATH=\"$LD_LIBRARY_PATH:{{jdbc_libs_dir}}\"\n" + - " export JAVA_LIBRARY_PATH=\"$JAVA_LIBRARY_PATH:{{jdbc_libs_dir}}\"\n" + - " {% endif %}"); - }}; - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; - + Map<String, String> mockProperties = new HashMap<String, String>() {{ + put("content", " export HADOOP_USER_CLASSPATH_FIRST=true #this prevents old metrics libs from mapreduce lib from bringing in old jar deps overriding HIVE_LIB\n" + + " if [ \"$SERVICE\" = \"cli\" ]; then\n" + + " if [ -z \"$DEBUG\" ]; then\n" + + " export HADOOP_OPTS=\"$HADOOP_OPTS -XX:NewRatio=12 -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:+UseNUMA -XX:+UseParallelGC -XX:-UseGCOverheadLimit\"\n" + + " else\n" + + " export HADOOP_OPTS=\"$HADOOP_OPTS -XX:NewRatio=12 -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:-UseGCOverheadLimit\"\n" + + " fi\n" + + " fi\n" + + "\n" + + " # The heap size of the jvm stared by hive shell script can be controlled via:\n" + + "\n" + + " if [ \"$SERVICE\" = \"metastore\" ]; then\n" + + " export HADOOP_HEAPSIZE={{hive_metastore_heapsize}} # Setting for HiveMetastore\n" + + " else\n" + + " export HADOOP_HEAPSIZE={{hive_heapsize}} # Setting for HiveServer2 and Client\n" + + " fi\n" + + "\n" + + " export HADOOP_CLIENT_OPTS=\"$HADOOP_CLIENT_OPTS -Xmx${HADOOP_HEAPSIZE}m\"\n" + + "\n" + + " # Larger heap size may be required when running queries over large number of files or partitions.\n" + + " # By default hive shell scripts use a heap size of 256 (MB). Larger heap size would also be\n" + + " # appropriate for hive server (hwi etc).\n" + + "\n" + + "\n" + + " # Set HADOOP_HOME to point to a specific hadoop install directory\n" + + " HADOOP_HOME=${HADOOP_HOME:-{{hadoop_home}}}\n" + + "\n" + + " # Hive Configuration Directory can be controlled by:\n" + + " export HIVE_CONF_DIR=test\n" + + "\n" + + " # Folder containing extra libraries required for hive compilation/execution can be controlled by:\n" + + " if [ \"${HIVE_AUX_JARS_PATH}\" != \"\" ]; then\n" + + " if [ -f \"${HIVE_AUX_JARS_PATH}\" ]; then\n" + + " export HIVE_AUX_JARS_PATH=${HIVE_AUX_JARS_PATH}\n" + + " elif [ -d \"/usr/hdp/current/hive-webhcat/share/hcatalog\" ]; then\n" + + " export HIVE_AUX_JARS_PATH=/usr/hdp/current/hive-webhcat/share/hcatalog/hive-hcatalog-core.jar\n" + + " fi\n" + + " elif [ -d \"/usr/hdp/current/hive-webhcat/share/hcatalog\" ]; then\n" + + " export HIVE_AUX_JARS_PATH=/usr/hdp/current/hive-webhcat/share/hcatalog/hive-hcatalog-core.jar\n" + + " fi\n" + + "\n" + + " export METASTORE_PORT={{hive_metastore_port}}\n" + + "\n" + + " {% if sqla_db_used or lib_dir_available %}\n" + + " export LD_LIBRARY_PATH=\"$LD_LIBRARY_PATH:{{jdbc_libs_dir}}\"\n" + + " export JAVA_LIBRARY_PATH=\"$JAVA_LIBRARY_PATH:{{jdbc_libs_dir}}\"\n" + + " {% endif %}"); + }}; + + Config hiveEnv = EasyMock.createNiceMock(Config.class); + expect(hiveEnv.getType()).andReturn("hive-env").anyTimes(); + expect(hiveEnv.getProperties()).andReturn(mockProperties).anyTimes(); expect(cluster.getDesiredConfigByType("hive-env")).andReturn(hiveEnv).atLeastOnce(); expect(m_clusters.getCluster((String) anyObject())).andReturn(cluster).anyTimes(); expect(m_injector.getInstance(Clusters.class)).andReturn(m_clusters).atLeastOnce(); - replay(m_injector, m_clusters, cluster); + replay(m_injector, m_clusters, cluster, hiveEnv); m_clusterField = HiveEnvClasspathAction.class.getDeclaredField("clusters"); m_clusterField.setAccessible(true); http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveZKQuorumConfigActionTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveZKQuorumConfigActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveZKQuorumConfigActionTest.java index 907194c..cd5eb9d 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveZKQuorumConfigActionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/HiveZKQuorumConfigActionTest.java @@ -91,7 +91,7 @@ public class HiveZKQuorumConfigActionTest { m_hiveSiteConfig.setProperties(EasyMock.anyObject(Map.class)); EasyMock.expectLastCall().once(); - m_hiveSiteConfig.persist(false); + m_hiveSiteConfig.save(); EasyMock.expectLastCall().once(); EasyMock.expect(m_cluster.getDesiredConfigByType(HiveZKQuorumConfigAction.HIVE_SITE_CONFIG_TYPE)).andReturn(m_hiveSiteConfig).atLeastOnce(); http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java index d374d75..d18f727 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/KerberosKeytabsActionTest.java @@ -36,7 +36,6 @@ import org.apache.ambari.server.controller.KerberosHelper; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; import org.apache.ambari.server.state.SecurityType; import org.apache.commons.lang.StringUtils; import org.easymock.EasyMock; @@ -65,26 +64,13 @@ public class KerberosKeytabsActionTest { m_clusters = EasyMock.createMock(Clusters.class); m_kerberosHelper = EasyMock.createMock(KerberosHelper.class); - m_kerberosConfig = new ConfigImpl("kerberos-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("kerberos-env", ""); - }}; + Map<String, String> mockProperties = new HashMap<String, String>() {{ + put("kerberos-env", ""); + }}; - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; + m_kerberosConfig = EasyMock.createNiceMock(Config.class); + expect(m_kerberosConfig.getType()).andReturn("kerberos-env").anyTimes(); + expect(m_kerberosConfig.getProperties()).andReturn(mockProperties).anyTimes(); Cluster cluster = EasyMock.createMock(Cluster.class); @@ -92,7 +78,7 @@ public class KerberosKeytabsActionTest { expect(cluster.getSecurityType()).andReturn(SecurityType.KERBEROS).anyTimes(); expect(m_clusters.getCluster((String) anyObject())).andReturn(cluster).anyTimes(); - replay(m_clusters, cluster); + replay(m_clusters, cluster, m_kerberosConfig); m_injector = Guice.createInjector(new AbstractModule() { http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerConfigCalculationTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerConfigCalculationTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerConfigCalculationTest.java index e673714..7a6a6c3 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerConfigCalculationTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerConfigCalculationTest.java @@ -35,7 +35,6 @@ import org.apache.ambari.server.agent.ExecutionCommand; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; @@ -57,54 +56,27 @@ public class RangerConfigCalculationTest { m_clusters = EasyMock.createMock(Clusters.class); Cluster cluster = EasyMock.createMock(Cluster.class); - Config adminConfig = new ConfigImpl("admin-properties") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("DB_FLAVOR", "MYSQL"); - put("db_host", "host1"); - put("db_name", "ranger"); - put("audit_db_name", "ranger_audit"); - }}; - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config adminSiteConfig = new ConfigImpl("admin-properties") { - Map<String, String> mockProperties = new HashMap<String, String>(); - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; - - Config rangerEnv = new ConfigImpl("ranger-env") { - Map<String, String> mockProperties = new HashMap<String, String>(); - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; + Map<String, String> mockProperties = new HashMap<String, String>() {{ + put("DB_FLAVOR", "MYSQL"); + put("db_host", "host1"); + put("db_name", "ranger"); + put("audit_db_name", "ranger_audit"); + }}; + + Config adminConfig = EasyMock.createNiceMock(Config.class); + expect(adminConfig.getType()).andReturn("admin-properties").anyTimes(); + expect(adminConfig.getProperties()).andReturn(mockProperties).anyTimes(); + + mockProperties = new HashMap<String, String>(); + + Config adminSiteConfig = EasyMock.createNiceMock(Config.class); + expect(adminSiteConfig.getType()).andReturn("admin-properties").anyTimes(); + expect(adminSiteConfig.getProperties()).andReturn(mockProperties).anyTimes(); + + Config rangerEnv = EasyMock.createNiceMock(Config.class); + expect(rangerEnv.getType()).andReturn("ranger-env").anyTimes(); + expect(rangerEnv.getProperties()).andReturn(mockProperties).anyTimes(); + expect(cluster.getDesiredConfigByType("admin-properties")).andReturn(adminConfig).atLeastOnce(); expect(cluster.getDesiredConfigByType("ranger-admin-site")).andReturn(adminSiteConfig).atLeastOnce(); @@ -113,7 +85,7 @@ public class RangerConfigCalculationTest { expect(m_clusters.getCluster((String) anyObject())).andReturn(cluster).anyTimes(); expect(m_injector.getInstance(Clusters.class)).andReturn(m_clusters).atLeastOnce(); - replay(m_injector, m_clusters, cluster); + replay(m_injector, m_clusters, cluster, adminConfig, adminSiteConfig, rangerEnv); m_clusterField = RangerConfigCalculation.class.getDeclaredField("m_clusters"); m_clusterField.setAccessible(true); http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerKerberosConfigCalculationTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerKerberosConfigCalculationTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerKerberosConfigCalculationTest.java index 25acb45..06092c3 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerKerberosConfigCalculationTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/RangerKerberosConfigCalculationTest.java @@ -25,6 +25,7 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import java.lang.reflect.Field; +import java.util.Collections; import java.util.HashMap; import java.util.Map; @@ -34,9 +35,8 @@ import org.apache.ambari.server.agent.CommandReport; import org.apache.ambari.server.agent.ExecutionCommand; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; -import org.apache.ambari.server.state.SecurityType; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; +import org.apache.ambari.server.state.SecurityType; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; @@ -59,124 +59,50 @@ public class RangerKerberosConfigCalculationTest { m_clusters = EasyMock.createMock(Clusters.class); Cluster cluster = EasyMock.createMock(Cluster.class); - Config hadoopConfig = new ConfigImpl("hadoop-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("hdfs_user", "hdfs"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - - Config hiveConfig = new ConfigImpl("hive-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("hive_user", "hive"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config yarnConfig = new ConfigImpl("yarn-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("yarn_user", "yarn"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config hbaseConfig = new ConfigImpl("hbase-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("hbase_user", "hbase"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config knoxConfig = new ConfigImpl("knox-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("knox_user", "knox"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config stormConfig = new ConfigImpl("storm-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("storm_user", "storm"); - put("storm_principal_name", "storm...@examle.com"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config kafkaConfig = new ConfigImpl("kafka-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("kafka_user", "kafka"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config kmsConfig = new ConfigImpl("kms-env") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("kms_user", "kms"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config hdfsSiteConfig = new ConfigImpl("hdfs-site") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("dfs.web.authentication.kerberos.keytab", "/etc/security/keytabs/spnego.kytab"); - }}; - - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - }; - - Config adminSiteConfig = new ConfigImpl("ranger-admin-site") { - Map<String, String> mockProperties = new HashMap<String, String>(); - @Override - public Map<String, String> getProperties() { - return mockProperties; - } - - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; + Config hadoopConfig = EasyMock.createNiceMock(Config.class); + expect(hadoopConfig.getType()).andReturn("hadoop-env").anyTimes(); + expect(hadoopConfig.getProperties()).andReturn(Collections.singletonMap("hdfs_user", "hdfs")).anyTimes(); + + Config hiveConfig = EasyMock.createNiceMock(Config.class); + expect(hiveConfig.getType()).andReturn("hive-env").anyTimes(); + expect(hiveConfig.getProperties()).andReturn(Collections.singletonMap("hive_user", "hive")).anyTimes(); + + Config yarnConfig = EasyMock.createNiceMock(Config.class); + expect(yarnConfig.getType()).andReturn("yarn-env").anyTimes(); + expect(yarnConfig.getProperties()).andReturn(Collections.singletonMap("yarn_user", "yarn")).anyTimes(); + + Config hbaseConfig = EasyMock.createNiceMock(Config.class); + expect(hbaseConfig.getType()).andReturn("hbase-env").anyTimes(); + expect(hbaseConfig.getProperties()).andReturn(Collections.singletonMap("hbase_user", "hbase")).anyTimes(); + + Config knoxConfig = EasyMock.createNiceMock(Config.class); + expect(knoxConfig.getType()).andReturn("knox-env").anyTimes(); + expect(knoxConfig.getProperties()).andReturn(Collections.singletonMap("knox_user", "knox")).anyTimes(); + + Map<String, String> mockProperties = new HashMap<String, String>() {{ + put("storm_user", "storm"); + put("storm_principal_name", "storm...@examle.com"); + }}; + + Config stormConfig = EasyMock.createNiceMock(Config.class); + expect(stormConfig.getType()).andReturn("storm-env").anyTimes(); + expect(stormConfig.getProperties()).andReturn(mockProperties).anyTimes(); + + Config kafkaConfig = EasyMock.createNiceMock(Config.class); + expect(kafkaConfig.getType()).andReturn("kafka-env").anyTimes(); + expect(kafkaConfig.getProperties()).andReturn(Collections.singletonMap("kafka_user", "kafka")).anyTimes(); + + Config kmsConfig = EasyMock.createNiceMock(Config.class); + expect(kmsConfig.getType()).andReturn("kms-env").anyTimes(); + expect(kmsConfig.getProperties()).andReturn(Collections.singletonMap("kms_user", "kms")).anyTimes(); + + Config hdfsSiteConfig = EasyMock.createNiceMock(Config.class); + expect(hdfsSiteConfig.getType()).andReturn("hdfs-site").anyTimes(); + expect(hdfsSiteConfig.getProperties()).andReturn(Collections.singletonMap("dfs.web.authentication.kerberos.keytab", "/etc/security/keytabs/spnego.kytab")).anyTimes(); + + Config adminSiteConfig = EasyMock.createNiceMock(Config.class); + expect(adminSiteConfig.getType()).andReturn("ranger-admin-site").anyTimes(); + expect(adminSiteConfig.getProperties()).andReturn(new HashMap<String,String>()).anyTimes(); expect(cluster.getDesiredConfigByType("hadoop-env")).andReturn(hadoopConfig).atLeastOnce(); expect(cluster.getDesiredConfigByType("hive-env")).andReturn(hiveConfig).atLeastOnce(); @@ -193,7 +119,8 @@ public class RangerKerberosConfigCalculationTest { expect(m_injector.getInstance(Clusters.class)).andReturn(m_clusters).atLeastOnce(); expect(cluster.getSecurityType()).andReturn(SecurityType.KERBEROS).anyTimes(); - replay(m_injector, m_clusters, cluster); + replay(m_injector, m_clusters, cluster, hadoopConfig, hiveConfig, yarnConfig, hbaseConfig, + knoxConfig, stormConfig, kafkaConfig, kmsConfig, hdfsSiteConfig, adminSiteConfig); m_clusterField = RangerKerberosConfigCalculation.class.getDeclaredField("m_clusters"); m_clusterField.setAccessible(true); @@ -236,7 +163,7 @@ public class RangerKerberosConfigCalculationTest { assertTrue(map.containsKey("ranger.plugins.storm.serviceuser")); assertTrue(map.containsKey("ranger.plugins.kafka.serviceuser")); assertTrue(map.containsKey("ranger.plugins.kms.serviceuser")); - assertTrue(map.containsKey("ranger.spnego.kerberos.keytab")); + assertTrue(map.containsKey("ranger.spnego.kerberos.keytab")); assertEquals("hdfs", map.get("ranger.plugins.hdfs.serviceuser")); @@ -254,4 +181,4 @@ public class RangerKerberosConfigCalculationTest { } -} +} http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/SparkShufflePropertyConfigTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/SparkShufflePropertyConfigTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/SparkShufflePropertyConfigTest.java index e65a824..518ab42 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/SparkShufflePropertyConfigTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/SparkShufflePropertyConfigTest.java @@ -36,7 +36,6 @@ import org.apache.ambari.server.agent.ExecutionCommand; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; import org.easymock.EasyMock; import org.junit.Before; import org.junit.Test; @@ -58,33 +57,20 @@ public class SparkShufflePropertyConfigTest { m_clusters = EasyMock.createMock(Clusters.class); cluster = EasyMock.createMock(Cluster.class); + Map<String, String> mockProperties = new HashMap<String, String>() {{ + put("yarn.nodemanager.aux-services", "some_service"); + }}; - Config adminConfig = new ConfigImpl("yarn-site") { - Map<String, String> mockProperties = new HashMap<String, String>() {{ - put("yarn.nodemanager.aux-services", "some_service"); - }}; - @Override - public Map<String, String> getProperties() { - return mockProperties; - } + Config yarnConfig = EasyMock.createNiceMock(Config.class); + expect(yarnConfig.getType()).andReturn("yarn-site").anyTimes(); + expect(yarnConfig.getProperties()).andReturn(mockProperties).anyTimes(); - @Override - public void setProperties(Map<String, String> properties) { - mockProperties.putAll(properties); - } - - @Override - public void persist(boolean newConfig) { - // no-op - } - }; - - expect(cluster.getDesiredConfigByType("yarn-site")).andReturn(adminConfig).atLeastOnce(); + expect(cluster.getDesiredConfigByType("yarn-site")).andReturn(yarnConfig).atLeastOnce(); expect(m_clusters.getCluster((String) anyObject())).andReturn(cluster).anyTimes(); expect(m_injector.getInstance(Clusters.class)).andReturn(m_clusters).atLeastOnce(); - replay(m_injector, m_clusters); + replay(m_injector, m_clusters, yarnConfig); clusterField = SparkShufflePropertyConfig.class.getDeclaredField("clusters"); clusterField.setAccessible(true); http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java index 8f9d4f4..262b10a 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/serveraction/upgrades/UpgradeActionTest.java @@ -67,7 +67,7 @@ import org.apache.ambari.server.serveraction.ServerAction; import org.apache.ambari.server.state.Cluster; import org.apache.ambari.server.state.Clusters; import org.apache.ambari.server.state.Config; -import org.apache.ambari.server.state.ConfigImpl; +import org.apache.ambari.server.state.ConfigFactory; import org.apache.ambari.server.state.Host; import org.apache.ambari.server.state.RepositoryInfo; import org.apache.ambari.server.state.RepositoryVersionState; @@ -153,6 +153,8 @@ public class UpgradeActionTest { private AmbariMetaInfo ambariMetaInfo; @Inject private FinalizeUpgradeAction finalizeUpgradeAction; + @Inject + private ConfigFactory configFactory; @Before public void setup() throws Exception { @@ -1043,24 +1045,22 @@ public class UpgradeActionTest { properties.put("a", "a1"); properties.put("b", "b1"); - Config c1 = new ConfigImpl(cluster, "zookeeper-env", properties, propertiesAttributes, m_injector); + configFactory.createNew(cluster, "zookeeper-env", "version-" + System.currentTimeMillis(), + properties, propertiesAttributes); + properties.put("zookeeper_a", "value_1"); properties.put("zookeeper_b", "value_2"); - Config c2 = new ConfigImpl(cluster, "hdfs-site", properties, propertiesAttributes, m_injector); + configFactory.createNew(cluster, "hdfs-site", "version-" + System.currentTimeMillis(), + properties, propertiesAttributes); + properties.put("hdfs_a", "value_3"); properties.put("hdfs_b", "value_4"); - Config c3 = new ConfigImpl(cluster, "core-site", properties, propertiesAttributes, m_injector); - Config c4 = new ConfigImpl(cluster, "foo-site", properties, propertiesAttributes, m_injector); - - cluster.addConfig(c1); - cluster.addConfig(c2); - cluster.addConfig(c3); - cluster.addConfig(c4); - c1.persist(); - c2.persist(); - c3.persist(); - c4.persist(); + configFactory.createNew(cluster, "core-site", "version-" + System.currentTimeMillis(), + properties, propertiesAttributes); + + configFactory.createNew(cluster, "foo-site", "version-" + System.currentTimeMillis(), + properties, propertiesAttributes); } } http://git-wip-us.apache.org/repos/asf/ambari/blob/a6639a7c/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigGroupTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigGroupTest.java b/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigGroupTest.java index 80665a5..75853db 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigGroupTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/state/ConfigGroupTest.java @@ -89,8 +89,7 @@ public class ConfigGroupTest { Map<String, String> attributes = new HashMap<String, String>(); attributes.put("a", "true"); propertiesAttributes.put("final", attributes); - Config config = configFactory.createNew(cluster, "hdfs-site", properties, propertiesAttributes); - config.setTag("testversion"); + Config config = configFactory.createNew(cluster, "hdfs-site", "testversion", properties, propertiesAttributes); Host host = clusters.getHost("h1"); @@ -154,11 +153,8 @@ public class ConfigGroupTest { Map<String, String> attributes = new HashMap<String, String>(); attributes.put("key1", "true"); propertiesAttributes.put("final", attributes); - Config config = new ConfigImpl("test-site"); - config.setProperties(properties); - config.setPropertiesAttributes(propertiesAttributes); - config.setTag("version100"); + Config config = configFactory.createNew(cluster, "test-site", "version100", properties, propertiesAttributes); configGroup.addConfiguration(config); Assert.assertEquals(2, configGroup.getConfigurations().values().size());