Repository: ambari Updated Branches: refs/heads/trunk b334d307e -> 4d8c1957d
AMBARI-18686 - Falcon user shouldn't be added to Oozie admin list if Falcon is not installed Project: http://git-wip-us.apache.org/repos/asf/ambari/repo Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/4d8c1957 Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/4d8c1957 Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/4d8c1957 Branch: refs/heads/trunk Commit: 4d8c1957de2b98c34670b66b2f374563d70a37db Parents: b334d30 Author: Tim Thorpe <ttho...@apache.org> Authored: Fri Oct 28 05:44:44 2016 -0700 Committer: Tim Thorpe <ttho...@apache.org> Committed: Fri Oct 28 05:44:44 2016 -0700 ---------------------------------------------------------------------- .../stacks/HDP/2.5/services/stack_advisor.py | 4 ++ .../stacks/2.5/common/test_stack_advisor.py | 63 ++++++++++++++++++++ 2 files changed, 67 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ambari/blob/4d8c1957/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py index d2cc429..9ceebb9 100644 --- a/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py +++ b/ambari-server/src/main/resources/stacks/HDP/2.5/services/stack_advisor.py @@ -42,6 +42,10 @@ class HDP25StackAdvisor(HDP24StackAdvisor): Logger.info("No oozie configurations available") return + if not "FALCON_SERVER" in clusterData["components"] : + Logger.info("Falcon is not part of the installation") + return + falconUser = 'falcon' if "falcon-env" in services["configurations"] : http://git-wip-us.apache.org/repos/asf/ambari/blob/4d8c1957/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py b/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py index 72e59aa..6fe357a 100644 --- a/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py +++ b/ambari-server/src/test/python/stacks/2.5/common/test_stack_advisor.py @@ -7701,6 +7701,69 @@ class TestHDP25StackAdvisor(TestCase): res = self.stackAdvisor.validateSpark2Defaults(properties, recommendedDefaults, configurations, services, {}) self.assertEquals(res, res_expected) + + def test_recommendOozieConfigurations_noFalconServer(self): + configurations = {} + clusterData = { + "components" : [] + } + expected = { + "oozie-site": {"properties":{}}, + "oozie-env": {"properties":{}} + } + + self.stackAdvisor.recommendOozieConfigurations(configurations, clusterData, {"configurations":{}}, None) + self.assertEquals(configurations, expected) + + + def test_recommendOozieConfigurations_withFalconServer(self): + configurations = { + "falcon-env" : { + "properties" : { + "falcon_user" : "falcon" + } + } + } + + services = { + "services": [ + { + "StackServices": { + "service_name": "FALCON" + }, "components": [] + }, + ], + "configurations": configurations, + "forced-configurations": [] + } + + clusterData = { + "components" : ["FALCON_SERVER"] + } + expected = { + "oozie-site": { + "properties": { + "oozie.services.ext": "org.apache.oozie.service.JMSAccessorService," + + "org.apache.oozie.service.PartitionDependencyManagerService," + + "org.apache.oozie.service.HCatAccessorService", + "oozie.service.ProxyUserService.proxyuser.falcon.groups" : "*", + "oozie.service.ProxyUserService.proxyuser.falcon.hosts" : "*" + } + }, + "falcon-env" : { + "properties" : { + "falcon_user" : "falcon" + } + }, + "oozie-env": { + "properties": {'oozie_admin_users': 'oozie, oozie-admin,falcon'} + } + } + + self.stackAdvisor.recommendOozieConfigurations(configurations, clusterData, services, None) + self.assertEquals(configurations, expected) + + """ Given a comma-separated string, split the items, sort them, and re-join the elements back into a comma-separated string