You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by sm...@apache.org on 2015/09/24 17:14:22 UTC
ambari git commit: AMBARI-13177. Ranger setup does not respect custom
service users (Gautam Borad via smohanty)
Repository: ambari
Updated Branches:
refs/heads/trunk 688666137 -> 04febac92
AMBARI-13177. Ranger setup does not respect custom service users (Gautam Borad via smohanty)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/04febac9
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/04febac9
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/04febac9
Branch: refs/heads/trunk
Commit: 04febac926e70aed3e0546acf6a5b6d92437f19a
Parents: 6886661
Author: Sumit Mohanty <sm...@hortonworks.com>
Authored: Thu Sep 24 08:14:11 2015 -0700
Committer: Sumit Mohanty <sm...@hortonworks.com>
Committed: Thu Sep 24 08:14:11 2015 -0700
----------------------------------------------------------------------
.../libraries/functions/setup_ranger_plugin.py | 9 +++++--
.../0.4.0/package/scripts/setup_ranger.py | 28 +++++++++++++++++++-
.../stacks/2.2/RANGER/test_ranger_admin.py | 22 ++++++++++++++-
.../stacks/2.2/RANGER/test_ranger_usersync.py | 23 ++++++++++++++++
4 files changed, 78 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/04febac9/ambari-common/src/main/python/resource_management/libraries/functions/setup_ranger_plugin.py
----------------------------------------------------------------------
diff --git a/ambari-common/src/main/python/resource_management/libraries/functions/setup_ranger_plugin.py b/ambari-common/src/main/python/resource_management/libraries/functions/setup_ranger_plugin.py
index a675d97..e4a19aa 100644
--- a/ambari-common/src/main/python/resource_management/libraries/functions/setup_ranger_plugin.py
+++ b/ambari-common/src/main/python/resource_management/libraries/functions/setup_ranger_plugin.py
@@ -32,12 +32,12 @@ from resource_management.core.exceptions import Fail
from resource_management.libraries.functions.ranger_functions_v2 import RangeradminV2
def setup_ranger_plugin(component_select_name, service_name,
- downloaded_custom_connector, driver_curl_source,
+ downloaded_custom_connector, driver_curl_source,
driver_curl_target, java_home,
repo_name, plugin_repo_dict,
ranger_env_properties, plugin_properties,
policy_user, policymgr_mgr_url,
- plugin_enabled,api_version=None, **kwargs):
+ plugin_enabled, component_user, component_group, api_version=None, **kwargs):
File(downloaded_custom_connector,
content = DownloadSource(driver_curl_source),
mode = 0644
@@ -60,6 +60,11 @@ def setup_ranger_plugin(component_select_name, service_name,
properties = plugin_properties
)
+ custom_plugin_properties = dict()
+ custom_plugin_properties['CUSTOM_USER'] = component_user
+ custom_plugin_properties['CUSTOM_GROUP'] = component_group
+ ModifyPropertiesFile(file_path,properties = custom_plugin_properties)
+
if plugin_enabled:
cmd = (format('enable-{service_name}-plugin.sh'),)
if api_version == 'v2' and api_version is not None:
http://git-wip-us.apache.org/repos/asf/ambari/blob/04febac9/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py
index d0fea38..27bccdc 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger.py
@@ -45,11 +45,19 @@ def setup_ranger_admin():
sudo=True)
File(params.driver_curl_target, mode=0644)
-
+
ModifyPropertiesFile(format("{ranger_home}/install.properties"),
properties = params.config['configurations']['admin-properties']
)
+ custom_config = dict()
+ custom_config['unix_user'] = params.unix_user
+ custom_config['unix_group'] = params.unix_group
+
+ ModifyPropertiesFile(format("{ranger_home}/install.properties"),
+ properties=custom_config
+ )
+
##if db flavor == oracle - set oracle home env variable
if params.db_flavor.lower() == 'oracle' and params.oracle_home:
env_dict = {'JAVA_HOME': params.java_home, 'ORACLE_HOME':params.oracle_home, 'LD_LIBRARY_PATH':params.oracle_home}
@@ -71,6 +79,11 @@ def setup_ranger_admin():
mode=0744
)
+ Directory(params.admin_log_dir,
+ owner = params.unix_user,
+ group = params.unix_group
+ )
+
def setup_usersync():
import params
@@ -78,6 +91,14 @@ def setup_usersync():
properties = params.config['configurations']['usersync-properties'],
)
+ custom_config = dict()
+ custom_config['unix_user'] = params.unix_user
+ custom_config['unix_group'] = params.unix_group
+
+ ModifyPropertiesFile(format("{usersync_home}/install.properties"),
+ properties=custom_config
+ )
+
cmd = format("cd {usersync_home} && ") + as_sudo([format('{usersync_home}/setup.sh')])
Execute(cmd, environment={'JAVA_HOME': params.java_home}, logoutput=True)
@@ -88,6 +109,11 @@ def setup_usersync():
mode = 0755,
)
+ Directory(params.usersync_log_dir,
+ owner = params.unix_user,
+ group = params.unix_group
+ )
+
def check_db_connnection():
import params
http://git-wip-us.apache.org/repos/asf/ambari/blob/04febac9/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py b/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py
index e9eb145..707718c 100644
--- a/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py
+++ b/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_admin.py
@@ -130,6 +130,12 @@ class TestRangerAdmin(RMFTestCase):
self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-admin/install.properties',
properties = self.getConfig()['configurations']['admin-properties'],
)
+ custom_config=dict()
+ custom_config['unix_user'] = "ranger"
+ custom_config['unix_group'] = "ranger"
+ self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-admin/install.properties',
+ properties = custom_config,
+ )
self.assertResourceCalled('Execute', 'cd /usr/hdp/current/ranger-admin && ambari-sudo.sh [RMF_ENV_PLACEHOLDER] -H -E /usr/hdp/current/ranger-admin/setup.sh',
logoutput = True,
environment = {'JAVA_HOME': u'/usr/jdk64/jdk1.7.0_45'},
@@ -141,7 +147,11 @@ class TestRangerAdmin(RMFTestCase):
mode = 0744,
properties = self.getConfig()['configurations']['ranger-site']
)
-
+ self.assertResourceCalled('Directory', '/var/log/ranger/admin',
+ owner = custom_config['unix_user'],
+ group = custom_config['unix_group']
+ )
+
def assert_configure_secured(self):
self.assertResourceCalled('Execute', 'mysql -u root --password=rootpassword -h localhost -s -e "select version();"',logoutput = True,
environment = {})
@@ -162,6 +172,12 @@ class TestRangerAdmin(RMFTestCase):
self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-admin/install.properties',
properties = self.getConfig()['configurations']['admin-properties'],
)
+ custom_config=dict()
+ custom_config['unix_user'] = "ranger"
+ custom_config['unix_group'] = "ranger"
+ self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-admin/install.properties',
+ properties = custom_config,
+ )
self.assertResourceCalled('Execute', 'cd /usr/hdp/current/ranger-admin && ambari-sudo.sh [RMF_ENV_PLACEHOLDER] -H -E /usr/hdp/current/ranger-admin/setup.sh',
logoutput = True,
environment = {'JAVA_HOME': u'/usr/jdk64/jdk1.7.0_45'},
@@ -173,6 +189,10 @@ class TestRangerAdmin(RMFTestCase):
mode = 0744,
properties = self.getConfig()['configurations']['ranger-site']
)
+ self.assertResourceCalled('Directory', '/var/log/ranger/admin',
+ owner = custom_config['unix_user'],
+ group = custom_config['unix_group']
+ )
def test_pre_rolling_upgrade_23(self, ):
http://git-wip-us.apache.org/repos/asf/ambari/blob/04febac9/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py b/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py
index b8c75ec..6accd29 100644
--- a/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py
+++ b/ambari-server/src/test/python/stacks/2.2/RANGER/test_ranger_usersync.py
@@ -163,6 +163,14 @@ class TestRangerUsersync(RMFTestCase):
self.assertResourceCalled('PropertiesFile', '/usr/hdp/current/ranger-usersync/install.properties',
properties = self.getConfig()['configurations']['usersync-properties'],
)
+
+ custom_config=dict()
+ custom_config['unix_user'] = "ranger"
+ custom_config['unix_group'] = "ranger"
+ self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-usersync/install.properties',
+ properties = custom_config,
+ )
+
self.assertResourceCalled('Execute', 'cd /usr/hdp/current/ranger-usersync && ambari-sudo.sh [RMF_ENV_PLACEHOLDER] -H -E /usr/hdp/current/ranger-usersync/setup.sh',
logoutput = True,
environment = {'JAVA_HOME': u'/usr/jdk64/jdk1.7.0_45'},
@@ -176,11 +184,22 @@ class TestRangerUsersync(RMFTestCase):
self.assertResourceCalled('File', '/usr/hdp/current/ranger-usersync/ranger-usersync-services.sh',
mode = 0755,
)
+ self.assertResourceCalled('Directory', '/var/log/ranger/usersync',
+ owner = custom_config['unix_user'],
+ group = custom_config['unix_group']
+ )
+
def assert_configure_secured(self):
self.assertResourceCalled('PropertiesFile', '/usr/hdp/current/ranger-usersync/install.properties',
properties = self.getConfig()['configurations']['usersync-properties'],
)
+ custom_config=dict()
+ custom_config['unix_user'] = "ranger"
+ custom_config['unix_group'] = "ranger"
+ self.assertResourceCalled('ModifyPropertiesFile', '/usr/hdp/current/ranger-usersync/install.properties',
+ properties = custom_config,
+ )
self.assertResourceCalled('Execute', 'cd /usr/hdp/current/ranger-usersync && ambari-sudo.sh [RMF_ENV_PLACEHOLDER] -H -E /usr/hdp/current/ranger-usersync/setup.sh',
logoutput = True,
environment = {'JAVA_HOME': u'/usr/jdk64/jdk1.7.0_45'},
@@ -194,3 +213,7 @@ class TestRangerUsersync(RMFTestCase):
self.assertResourceCalled('File', '/usr/hdp/current/ranger-usersync/ranger-usersync-services.sh',
mode = 0755,
)
+ self.assertResourceCalled('Directory', '/var/log/ranger/usersync',
+ owner = custom_config['unix_user'],
+ group = custom_config['unix_group']
+ )