def test_create_ambari_service(self): service = s.create_service('AMBARI') self.assertEqual('AMBARI', service.name) expected_configs = set(['global', 'core-site']) self.assertEqual(expected_configs, expected_configs & service.configurations) self.assertTrue(service.is_mandatory())
def test_create_oozie_service(self): service = s.create_service('OOZIE') self.assertEqual('OOZIE', service.name) expected_configs = set(['global', 'core-site', 'oozie-site']) self.assertEqual(expected_configs, expected_configs & service.configurations) self.assertFalse(service.is_mandatory())
def test_create_ganglia_service(self): service = s.create_service('GANGLIA') self.assertEqual('GANGLIA', service.name) expected_configs = set(['global', 'core-site']) self.assertEqual(expected_configs, expected_configs & service.configurations) self.assertFalse(service.is_mandatory())
def test_create_webhcat_service(self): service = s.create_service('WEBHCAT') self.assertEqual('WEBHCAT', service.name) expected_configs = set(['global', 'core-site', 'webhcat-site']) self.assertEqual(expected_configs, expected_configs & service.configurations) self.assertFalse(service.is_mandatory())
def test_create_mr_service(self): service = s.create_service('MAPREDUCE') self.assertEqual('MAPREDUCE', service.name) expected_configs = set(['global', 'core-site', 'mapred-site']) self.assertEqual(expected_configs, expected_configs & service.configurations) self.assertTrue(service.is_mandatory())
def test_create_sqoop_service(self, patched): service = s.create_service('SQOOP') self.assertEqual('SQOOP', service.name) expected_configs = set(['global', 'core-site']) self.assertEqual(expected_configs, expected_configs & service.configurations) self.assertFalse(service.is_mandatory()) # ensure that hdfs and mr clients are added implicitly master_host = hdp_test_base.TestServer( 'master.novalocal', 'master', '11111', 3, '111.11.1111', '222.11.1111') master_ng = hdp_test_base.TestNodeGroup( 'master', [master_host], ["NAMENODE", "JOBTRACKER", "SECONDARY_NAMENODE", "TASKTRACKER", "DATANODE", "AMBARI_SERVER"]) sqoop_host = hdp_test_base.TestServer( 'sqoop.novalocal', 'sqoop', '11111', 3, '111.11.1111', '222.11.1111') sqoop_ng = hdp_test_base.TestNodeGroup( 'sqoop', [sqoop_host], ["SQOOP"]) cluster = hdp_test_base.TestCluster([master_ng, sqoop_ng]) cluster_spec = hdp_test_base.create_clusterspec() cluster_spec.create_operational_config(cluster, []) components = cluster_spec.get_node_groups_containing_component( 'SQOOP')[0].components self.assertIn('HDFS_CLIENT', components) self.assertIn('MAPREDUCE_CLIENT', components)
def _parse_services(self, template_json): for s in template_json['services']: name = s['name'] service = services.create_service(name) self.services.append(service) for c in s['components']: component = Component(c['name'], c['type'], c['cardinality']) service.add_component(component) if 'users' in s: for u in s['users']: user = User(u['name'], u['password'], u['groups']) service.add_user(user) configs = self._parse_configurations(s) for config in configs: service.add_configuration(config)
def test_get_storage_paths(self): service = s.create_service('AMBARI') ng1 = TestNodeGroup(None, None, None) ng1.storage_paths = ['/mnt', '/volume/disk1'] ng2 = TestNodeGroup(None, None, None) ng2.storage_paths = ['/mnt'] paths = service._get_common_paths([ng1, ng2]) self.assertEqual(['/mnt'], paths) ng3 = TestNodeGroup(None, None, None) ng1.storage_paths = ['/mnt', '/volume/disk1', '/volume/disk2'] ng2.storage_paths = ['/mnt'] ng3.storage_paths = ['/mnt', '/volume/disk1'] paths = service._get_common_paths([ng1, ng2, ng3]) self.assertEqual(['/mnt'], paths) ng1.storage_paths = ['/mnt', '/volume/disk1', '/volume/disk2'] ng2.storage_paths = ['/mnt', '/volume/disk1'] ng3.storage_paths = ['/mnt', '/volume/disk1'] paths = service._get_common_paths([ng1, ng2, ng3]) self.assertEqual(['/volume/disk1'], paths)