You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by al...@apache.org on 2015/09/23 18:14:18 UTC

ambari git commit: AMBARI-13197. Handle copying ranger-ugsync-default.xml for RU (Gautam Borad via alejandro)

Repository: ambari
Updated Branches:
  refs/heads/trunk d05dd6654 -> 52bad3ea8


AMBARI-13197. Handle copying ranger-ugsync-default.xml for RU (Gautam Borad via alejandro)


Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/52bad3ea
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/52bad3ea
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/52bad3ea

Branch: refs/heads/trunk
Commit: 52bad3ea82e53f5bba915ae92f7bf61aebf77423
Parents: d05dd66
Author: Alejandro Fernandez <af...@hortonworks.com>
Authored: Wed Sep 23 09:14:07 2015 -0700
Committer: Alejandro Fernandez <af...@hortonworks.com>
Committed: Wed Sep 23 09:14:07 2015 -0700

----------------------------------------------------------------------
 .../0.4.0/package/scripts/ranger_usersync.py    |  4 ++
 .../0.4.0/package/scripts/setup_ranger_xml.py   | 50 +++++++++++++++-----
 2 files changed, 42 insertions(+), 12 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ambari/blob/52bad3ea/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py
index 768bfa4..6a2d4a1 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/ranger_usersync.py
@@ -70,6 +70,10 @@ class RangerUsersync(Script):
     env.set_params(params)
     upgrade.prestart(env, "ranger-usersync")
 
+    if params.xml_configurations_supported:
+      from setup_ranger_xml import ranger
+      ranger('ranger_usersync', rolling_upgrade=True)
+
   def get_stack_to_component(self):
     return {"HDP": "ranger-usersync"}
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/52bad3ea/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py
index a2fe1f0..77e487f 100644
--- a/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py
+++ b/ambari-server/src/main/resources/common-services/RANGER/0.4.0/package/scripts/setup_ranger_xml.py
@@ -40,7 +40,7 @@ def ranger(name=None, rolling_upgrade=False):
     setup_ranger_admin(rolling_upgrade=rolling_upgrade)
 
   if name == 'ranger_usersync':
-    setup_usersync()
+    setup_usersync(rolling_upgrade=rolling_upgrade)
 
 def setup_ranger_admin(rolling_upgrade=False):
   import params
@@ -101,8 +101,11 @@ def setup_ranger_admin(rolling_upgrade=False):
     group = params.unix_group
   )
 
-  File(params.ranger_admin_default_file, owner=params.unix_user, group=params.unix_group)
-  File(params.security_app_context_file, owner=params.unix_user, group=params.unix_group)
+  if os.path.isfile(params.ranger_admin_default_file):
+    File(params.ranger_admin_default_file, owner=params.unix_user, group=params.unix_group)
+
+  if os.path.isfile(params.security_app_context_file):
+    File(params.security_app_context_file, owner=params.unix_user, group=params.unix_group)
 
   Execute(('ln','-sf', format('{ranger_home}/ews/ranger-admin-services.sh'),'/usr/bin/ranger-admin'),
     not_if=format("ls /usr/bin/ranger-admin"),
@@ -268,9 +271,18 @@ def do_keystore_setup(rolling_upgrade=False):
     )
 
  
-def setup_usersync():
+def setup_usersync(rolling_upgrade=False):
   import params
 
+  usersync_home = params.usersync_home
+  ranger_home = params.ranger_home
+  ranger_ugsync_conf = params.ranger_ugsync_conf
+
+  if rolling_upgrade:
+    usersync_home = format("/usr/hdp/{version}/ranger-usersync")
+    ranger_home = format("/usr/hdp/{version}/ranger-admin")
+    ranger_ugsync_conf = format("/usr/hdp/{version}/ranger-usersync/conf")
+
   Directory(params.ranger_pid_dir,
     mode=0750,
     owner = params.unix_user,
@@ -286,29 +298,43 @@ def setup_usersync():
        owner = params.unix_user
   )
 
+  if rolling_upgrade:
+    src_file = format('{usersync_home}/conf.dist/ranger-ugsync-default.xml')
+    dst_file = format('{usersync_home}/conf/ranger-ugsync-default.xml')
+    Execute(('cp', '-f', src_file, dst_file), sudo=True)
+
+    src_file = format('{usersync_home}/conf.dist/log4j.xml')
+    dst_file = format('{usersync_home}/conf/log4j.xml')
+    Execute(('cp', '-f', src_file, dst_file), sudo=True)
+
   XmlConfig("ranger-ugsync-site.xml",
-    conf_dir=params.ranger_ugsync_conf,
+    conf_dir=ranger_ugsync_conf,
     configurations=params.config['configurations']['ranger-ugsync-site'],
     configuration_attributes=params.config['configuration_attributes']['ranger-ugsync-site'],
     owner=params.unix_user,
     group=params.unix_group,
     mode=0644)
 
-  File(params.ranger_ugsync_default_file, owner=params.unix_user, group=params.unix_group)
-  File(params.usgsync_log4j_file, owner=params.unix_user, group=params.unix_group)
-  File(params.cred_validator_file, group=params.unix_group, mode=04555)
+  if os.path.isfile(params.ranger_ugsync_default_file):
+    File(params.ranger_ugsync_default_file, owner=params.unix_user, group=params.unix_group)
+
+  if os.path.isfile(params.usgsync_log4j_file):
+    File(params.usgsync_log4j_file, owner=params.unix_user, group=params.unix_group)
+
+  if os.path.isfile(params.cred_validator_file):
+    File(params.cred_validator_file, group=params.unix_group, mode=04555)
 
-  cred_lib = os.path.join(params.usersync_home,"lib","*")
+  cred_lib = os.path.join(usersync_home,"lib","*")
   cred_setup_prefix = (format('{ranger_home}/ranger_credential_helper.py'), '-l', cred_lib)
 
   cred_setup = cred_setup_prefix + ('-f', params.ugsync_jceks_path, '-k', 'usersync.ssl.key.password', '-v', PasswordString(params.ranger_usersync_keystore_password), '-c', '1')
-  Execute(cred_setup, environment={'RANGER_ADMIN_HOME':params.ranger_home, 'JAVA_HOME': params.java_home}, logoutput=True, sudo=True)
+  Execute(cred_setup, environment={'RANGER_ADMIN_HOME':ranger_home, 'JAVA_HOME': params.java_home}, logoutput=True, sudo=True)
 
   cred_setup = cred_setup_prefix + ('-f', params.ugsync_jceks_path, '-k', 'ranger.usersync.ldap.bindalias', '-v', PasswordString(params.ranger_usersync_ldap_ldapbindpassword), '-c', '1')
-  Execute(cred_setup, environment={'RANGER_ADMIN_HOME':params.ranger_home, 'JAVA_HOME': params.java_home}, logoutput=True, sudo=True)
+  Execute(cred_setup, environment={'RANGER_ADMIN_HOME':ranger_home, 'JAVA_HOME': params.java_home}, logoutput=True, sudo=True)
 
   cred_setup = cred_setup_prefix + ('-f', params.ugsync_jceks_path, '-k', 'usersync.ssl.truststore.password', '-v', PasswordString(params.ranger_usersync_truststore_password), '-c', '1')
-  Execute(cred_setup, environment={'RANGER_ADMIN_HOME':params.ranger_home, 'JAVA_HOME': params.java_home}, logoutput=True, sudo=True)
+  Execute(cred_setup, environment={'RANGER_ADMIN_HOME':ranger_home, 'JAVA_HOME': params.java_home}, logoutput=True, sudo=True)
 
   File(params.ugsync_jceks_path,
        owner = params.unix_user,