Repository: incubator-ranger Updated Branches: refs/heads/master bf343a0dd -> d61ef2a04
RANGER-1192 : Ranger PID file not being read if a custom location is provided Signed-off-by: Gautam Borad <gau...@apache.org> Project: http://git-wip-us.apache.org/repos/asf/incubator-ranger/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ranger/commit/d61ef2a0 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ranger/tree/d61ef2a0 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ranger/diff/d61ef2a0 Branch: refs/heads/master Commit: d61ef2a0438fd69a9595ddd192bf1b9a01c121d1 Parents: bf343a0 Author: Mehul Parikh <mehul.par...@freestoneinfotech.com> Authored: Tue Oct 25 15:59:16 2016 +0530 Committer: Gautam Borad <gau...@apache.org> Committed: Fri Nov 11 12:12:50 2016 +0530 ---------------------------------------------------------------------- .../scripts/ranger-admin-services.sh | 14 ++++++++++-- kms/scripts/install.properties | 2 ++ kms/scripts/ranger-kms | 14 ++++++++++-- kms/scripts/setup.sh | 12 ++++++++++ security-admin/scripts/install.properties | 3 +++ security-admin/scripts/setup.sh | 14 +++++++++++- tagsync/scripts/install.properties | 3 +++ tagsync/scripts/ranger-tagsync-services.sh | 20 +++++++++++------ tagsync/scripts/setup.py | 22 ++++++++++++++----- unixauthservice/scripts/install.properties | 3 +++ .../scripts/ranger-usersync-services.sh | 23 +++++++++++--------- unixauthservice/scripts/setup.py | 22 ++++++++++++++----- 12 files changed, 119 insertions(+), 33 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/embeddedwebserver/scripts/ranger-admin-services.sh ---------------------------------------------------------------------- diff --git a/embeddedwebserver/scripts/ranger-admin-services.sh b/embeddedwebserver/scripts/ranger-admin-services.sh index f672236..515e010 100755 --- a/embeddedwebserver/scripts/ranger-admin-services.sh +++ b/embeddedwebserver/scripts/ranger-admin-services.sh @@ -29,7 +29,6 @@ XAPOLICYMGR_DIR=`(cd $realScriptDir/..; pwd)` XAPOLICYMGR_EWS_DIR=${XAPOLICYMGR_DIR}/ews RANGER_JAAS_LIB_DIR="${XAPOLICYMGR_EWS_DIR}/ranger_jaas" RANGER_JAAS_CONF_DIR="${XAPOLICYMGR_EWS_DIR}/webapp/WEB-INF/classes/conf/ranger_jaas" -pidf=/var/run/ranger/rangeradmin.pid JAVA_OPTS=" ${JAVA_OPTS} -XX:MaxPermSize=256m -Xmx1024m -Xms1024m " if [ -f ${XAPOLICYMGR_DIR}/ews/webapp/WEB-INF/classes/conf/java_home.sh ]; then @@ -52,6 +51,17 @@ then RANGER_ADMIN_LOG_DIR=${XAPOLICYMGR_EWS_DIR}/logs fi +if [ -z "${RANGER_PID_DIR_PATH}" ] +then + RANGER_PID_DIR_PATH=/var/run/ranger +fi +pidf=${RANGER_PID_DIR_PATH}/rangeradmin.pid + +if [ -z "${RANGER_USER}" ] +then + RANGER_USER=ranger +fi + start() { SLEEP_TIME_AFTER_START=5 nohup java -Dproc_rangeradmin ${JAVA_OPTS} -Dlogdir=${RANGER_ADMIN_LOG_DIR} -Dcatalina.base=${XAPOLICYMGR_EWS_DIR} -cp "${XAPOLICYMGR_EWS_DIR}/webapp/WEB-INF/classes/conf:${XAPOLICYMGR_EWS_DIR}/lib/*:${RANGER_JAAS_LIB_DIR}/*:${RANGER_JAAS_CONF_DIR}:${JAVA_HOME}/lib/*:${RANGER_HADOOP_CONF_DIR}/*:$CLASSPATH" org.apache.ranger.server.tomcat.EmbeddedServer > ${RANGER_ADMIN_LOG_DIR}/catalina.out 2>&1 & @@ -61,7 +71,7 @@ start() { if ps -p $VALUE_OF_PID > /dev/null then echo $VALUE_OF_PID > ${pidf} - chown ranger ${pidf} + chown ${RANGER_USER} ${pidf} chmod 660 ${pidf} pid=`cat $pidf` echo "Apache Ranger Admin Service with pid ${pid} has started." http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/kms/scripts/install.properties ---------------------------------------------------------------------- diff --git a/kms/scripts/install.properties b/kms/scripts/install.properties index 0516269..d07dc2c 100755 --- a/kms/scripts/install.properties +++ b/kms/scripts/install.properties @@ -203,6 +203,8 @@ SSL_TRUSTSTORE_PASSWORD=changeit # Custom log directory path RANGER_KMS_LOG_DIR=$PWD +#PID file path +RANGER_KMS_PID_DIR_PATH=/var/run/ranger_kms # ################# DO NOT MODIFY ANY VARIABLES BELOW ######################### # # --- These deployment variables are not to be modified unless you understand the full impact of the changes http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/kms/scripts/ranger-kms ---------------------------------------------------------------------- diff --git a/kms/scripts/ranger-kms b/kms/scripts/ranger-kms index d2937aa..80181d7 100755 --- a/kms/scripts/ranger-kms +++ b/kms/scripts/ranger-kms @@ -53,6 +53,16 @@ then RANGER_KMS_LOG_DIR=${RANGER_KMS_EWS_DIR}/logs fi +if [ -z "${RANGER_KMS_PID_DIR_PATH}" ] +then + RANGER_KMS_PID_DIR_PATH=/var/run/ranger_kms +fi +pidf=${RANGER_KMS_PID_DIR_PATH}/rangerkms.pid + +if [ -z "${KMS_USER}" ] +then + KMS_USER=kms +fi PROC_NAME=proc_rangerkms export PROC_NAME @@ -75,7 +85,7 @@ then fi KMS_CONF_DIR=${RANGER_KMS_EWS_DIR}/webapp/WEB-INF/classes/conf -pidf="/var/run/ranger_kms/rangerkms.pid" + JAVA_OPTS="${JAVA_OPTS} -Dcatalina.base=${RANGER_KMS_EWS_DIR} -Dkms.config.dir=${KMS_CONF_DIR} -Dkms.log.dir=${TOMCAT_LOG_DIR} -cp ${RANGER_KMS_EWS_CONF_DIR}:${RANGER_KMS_EWS_LIB_DIR}/*:${RANGER_KMS_EWS_DIR}/webapp/lib/*:${JAVA_HOME}/lib/*:${RANGER_HADOOP_CONF_DIR}/*:$CLASSPATH " createRangerKMSPid () { SLEEP_TIME_AFTER_START=5 @@ -86,7 +96,7 @@ createRangerKMSPid () { if ps -p $VALUE_OF_PID > /dev/null then echo $VALUE_OF_PID > ${pidf} - chown ranger ${pidf} + chown ${KMS_USER} ${pidf} chmod 660 ${pidf} pid=`cat $pidf` echo "Apache Ranger KMS Service with pid ${pid} has started." http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/kms/scripts/setup.sh ---------------------------------------------------------------------- diff --git a/kms/scripts/setup.sh b/kms/scripts/setup.sh index 4f2e320..568350b 100755 --- a/kms/scripts/setup.sh +++ b/kms/scripts/setup.sh @@ -88,6 +88,7 @@ sqlanywhere_core_file=$(get_prop 'sqlanywhere_core_file' $PROPFILE) cred_keystore_filename=$(eval echo "$(get_prop 'cred_keystore_filename' $PROPFILE)") KMS_BLACKLIST_DECRYPT_EEK=$(get_prop 'KMS_BLACKLIST_DECRYPT_EEK' $PROPFILE) RANGER_KMS_LOG_DIR=$(eval echo "$(get_prop 'RANGER_KMS_LOG_DIR' $PROPFILE)") +RANGER_KMS_PID_DIR_PATH=$(eval echo "$(get_prop 'RANGER_KMS_PID_DIR_PATH' $PROPFILE)") HSM_TYPE=$(get_prop 'HSM_TYPE' $PROPFILE) HSM_ENABLED=$(get_prop 'HSM_ENABLED' $PROPFILE) HSM_PARTITION_NAME=$(get_prop 'HSM_PARTITION_NAME' $PROPFILE) @@ -765,6 +766,17 @@ setup_install_files(){ echo "export RANGER_KMS_LOG_DIR=${RANGER_KMS_LOG_DIR}" > ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-kms-env-logdir.sh chmod a+rx ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-kms-env-logdir.sh + if [ ! -d ${RANGER_KMS_PID_DIR_PATH} ]; then + log "[I] Creating KMS PID folder: ${RANGER_KMS_PID_DIR_PATH}" + mkdir -p ${RANGER_KMS_PID_DIR_PATH} + fi + if [ -d ${RANGER_KMS_PID_DIR_PATH} ]; then + chown -R ${unix_user} ${RANGER_KMS_PID_DIR_PATH} + fi + echo "export RANGER_KMS_PID_DIR_PATH=${RANGER_KMS_PID_DIR_PATH}" > ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-kms-env-piddir.sh + echo "export KMS_USER=${unix_user}" >> ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-kms-env-piddir.sh + chmod a+rx ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-kms-env-piddir.sh + log "[I] Setting up installation files and directory DONE"; if [ ! -f ${INSTALL_DIR}/rpm ]; then http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/security-admin/scripts/install.properties ---------------------------------------------------------------------- diff --git a/security-admin/scripts/install.properties b/security-admin/scripts/install.properties index 46a0091..693129f 100644 --- a/security-admin/scripts/install.properties +++ b/security-admin/scripts/install.properties @@ -187,6 +187,9 @@ sso_publickey= # Custom log directory path RANGER_ADMIN_LOG_DIR=$PWD +# PID file path +RANGER_PID_DIR_PATH=/var/run/ranger + # ################# DO NOT MODIFY ANY VARIABLES BELOW ######################### # # --- These deployment variables are not to be modified unless you understand the full impact of the changes http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/security-admin/scripts/setup.sh ---------------------------------------------------------------------- diff --git a/security-admin/scripts/setup.sh b/security-admin/scripts/setup.sh index 059fc21..2ec26f7 100755 --- a/security-admin/scripts/setup.sh +++ b/security-admin/scripts/setup.sh @@ -20,9 +20,9 @@ # This script will install policymanager webapplication under tomcat and also, initialize the database with ranger users/tables. PROPFILE=$PWD/install.properties -propertyValue='' pidFolderName='/var/run/ranger' mkdir -p ${pidFolderName} +propertyValue='' if [ ! $? = "0" ];then log "$PROPFILE file not found....!!"; exit 1; @@ -116,6 +116,7 @@ sso_enabled=$(get_prop 'sso_enabled' $PROPFILE) sso_providerurl=$(get_prop 'sso_providerurl' $PROPFILE) sso_publickey=$(get_prop 'sso_publickey' $PROPFILE) RANGER_ADMIN_LOG_DIR=$(eval echo "$(get_prop 'RANGER_ADMIN_LOG_DIR' $PROPFILE)") +RANGER_PID_DIR_PATH=$(eval echo "$(get_prop 'RANGER_PID_DIR_PATH' $PROPFILE)") spnego_principal=$(get_prop 'spnego_principal' $PROPFILE) spnego_keytab=$(get_prop 'spnego_keytab' $PROPFILE) @@ -1132,6 +1133,17 @@ setup_install_files(){ echo "export RANGER_ADMIN_LOG_DIR=${RANGER_ADMIN_LOG_DIR}" > ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-admin-env-logdir.sh chmod a+rx ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-admin-env-logdir.sh + if [ ! -d ${RANGER_PID_DIR_PATH} ]; then + log "[I]Creating Ranger PID folder: ${RANGER_PID_DIR_PATH}" + mkdir -p ${RANGER_PID_DIR_PATH} + fi + if [ -d ${RANGER_PID_DIR_PATH} ]; then + chown -R ${unix_user} ${RANGER_PID_DIR_PATH} + fi + echo "export RANGER_PID_DIR_PATH=${RANGER_PID_DIR_PATH}" > ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-admin-env-piddir.sh + echo "export RANGER_USER=${unix_user}" >> ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-admin-env-piddir.sh + chmod a+rx ${WEBAPP_ROOT}/WEB-INF/classes/conf/ranger-admin-env-piddir.sh + log "[I] Setting up installation files and directory DONE"; if [ ! -f ${INSTALL_DIR}/rpm ]; then http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/tagsync/scripts/install.properties ---------------------------------------------------------------------- diff --git a/tagsync/scripts/install.properties b/tagsync/scripts/install.properties index 2b40a17..a2c410a 100644 --- a/tagsync/scripts/install.properties +++ b/tagsync/scripts/install.properties @@ -95,6 +95,9 @@ unix_group=ranger # Logs are stored in logdir logdir = log +#PID file path +TAGSYNC_PID_DIR_PATH=/var/run/ranger + #Set to run in kerberos environment is_secure = false tagsync_principal= http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/tagsync/scripts/ranger-tagsync-services.sh ---------------------------------------------------------------------- diff --git a/tagsync/scripts/ranger-tagsync-services.sh b/tagsync/scripts/ranger-tagsync-services.sh index e81a6b2..7f86e2f 100755 --- a/tagsync/scripts/ranger-tagsync-services.sh +++ b/tagsync/scripts/ranger-tagsync-services.sh @@ -27,13 +27,19 @@ realScriptDir=`dirname $realScriptPath` cd $realScriptDir cdir=`pwd` -pidd=/var/run/ranger - -if [ -d $pidd ]; then - mkdir -p $pidd +for custom_env_script in `find ${cdir}/conf/ -name "ranger-tagsync-env*"`; do + if [ -f $custom_env_script ]; then + . $custom_env_script + fi +done + +if [ -z "${TAGSYNC_PID_DIR_PATH}" ]; then + pidf=/var/run/ranger +fi +pidf=${TAGSYNC_PID_DIR_PATH}/tagsync.pid +if [ -z "${UNIX_TAGSYNC_USER}" ]; then + UNIX_TAGSYNC_USER=ranger fi - -pidf=${pidd}/tagsync.pid if [ "${action}" == "START" ]; then @@ -82,7 +88,7 @@ if [ "${action}" == "START" ]; then if ps -p $VALUE_OF_PID > /dev/null then echo $VALUE_OF_PID > ${pidf} - chown ranger ${pidf} + chown ${UNIX_TAGSYNC_USER} ${pidf} chmod 660 ${pidf} pid=`cat $pidf` echo "Apache Ranger Tagsync Service with pid ${pid} has started." http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/tagsync/scripts/setup.py ---------------------------------------------------------------------- diff --git a/tagsync/scripts/setup.py b/tagsync/scripts/setup.py index ea47de7..e6150a7 100755 --- a/tagsync/scripts/setup.py +++ b/tagsync/scripts/setup.py @@ -34,7 +34,6 @@ if (not 'JAVA_HOME' in os.environ): debugLevel = 1 generateXML = 0 installPropDirName = '.' -pidFolderName = '/var/run/ranger' logFolderName = '/var/log/ranger' initdDirName = '/etc/init.d' @@ -92,6 +91,8 @@ TAG_SOURCE_FILE_ENABLED = 'ranger.tagsync.source.file' hadoopConfFileName = 'core-site.xml' ENV_HADOOP_CONF_FILE = "ranger-tagsync-env-hadoopconfdir.sh" +ENV_PID_FILE = 'ranger-tagsync-env-piddir.sh' + globalDict = {} configure_security = False @@ -339,6 +340,11 @@ def main(): hadoop_conf = globalDict['hadoop_conf'] + pid_dir_path = globalDict['TAGSYNC_PID_DIR_PATH'] + unix_user = globalDict['unix_user'] + + if pid_dir_path == "": + pid_dir_path = "/var/run/ranger" dirList = [ rangerBaseDirName, tagsyncBaseDirFullName, confFolderName ] for dir in dirList: @@ -390,12 +396,12 @@ def main(): else: os.makedirs(logFolderName,logFolderPermMode) - if (not os.path.isdir(pidFolderName)): - os.makedirs(pidFolderName,logFolderPermMode) - if (not os.path.isdir(tagsyncLogFolderName)): os.makedirs(tagsyncLogFolderName,logFolderPermMode) + if (not os.path.isdir(pid_dir_path)): + os.makedirs(pid_dir_path,logFolderPermMode) + if (unixUserProp in mergeProps): ownerName = mergeProps[unixUserProp] else: @@ -420,7 +426,6 @@ def main(): os.chown(logFolderName,ownerId,groupId) os.chown(tagsyncLogFolderName,ownerId,groupId) - os.chown(pidFolderName,ownerId,groupId) os.chown(rangerBaseDirName,ownerId,groupId) initializeInitD() @@ -470,8 +475,15 @@ def main(): os.chmod(fn, 0755) write_env_files("RANGER_TAGSYNC_HADOOP_CONF_DIR", hadoop_conf, ENV_HADOOP_CONF_FILE) + write_env_files("TAGSYNC_PID_DIR_PATH", pid_dir_path, ENV_PID_FILE); os.chown(os.path.join(confBaseDirName, ENV_HADOOP_CONF_FILE),ownerId,groupId) os.chmod(os.path.join(confBaseDirName, ENV_HADOOP_CONF_FILE),0755) + os.chown(os.path.join(confBaseDirName, ENV_PID_FILE),ownerId,groupId) + os.chmod(os.path.join(confBaseDirName, ENV_PID_FILE),0755) + + f = open(os.path.join(confBaseDirName, ENV_PID_FILE), "a+") + f.write("\nexport {0}={1}".format("UNIX_TAGSYNC_USER",unix_user)) + f.close() hadoop_conf_full_path = os.path.join(hadoop_conf, hadoopConfFileName) tagsync_conf_full_path = os.path.join(tagsyncBaseDirFullName,confBaseDirName,hadoopConfFileName) http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/unixauthservice/scripts/install.properties ---------------------------------------------------------------------- diff --git a/unixauthservice/scripts/install.properties b/unixauthservice/scripts/install.properties index 76d3b2e..e784dda 100644 --- a/unixauthservice/scripts/install.properties +++ b/unixauthservice/scripts/install.properties @@ -116,6 +116,9 @@ SYNC_LDAP_GROUPNAME_CASE_CONVERSION=lower logdir=logs #/var/log/ranger/usersync +# PID DIR PATH +USERSYNC_PID_DIR_PATH=/var/run/ranger + # do we want to do ldapsearch to find groups instead of relying on user entry attributes # valid values: true, false # any value other than true would be treated as false http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/unixauthservice/scripts/ranger-usersync-services.sh ---------------------------------------------------------------------- diff --git a/unixauthservice/scripts/ranger-usersync-services.sh b/unixauthservice/scripts/ranger-usersync-services.sh index 4f57fdc..e5a676d 100644 --- a/unixauthservice/scripts/ranger-usersync-services.sh +++ b/unixauthservice/scripts/ranger-usersync-services.sh @@ -27,8 +27,18 @@ realScriptDir=`dirname $realScriptPath` cd $realScriptDir cdir=`pwd` -pidf=/var/run/ranger/usersync.pid - +for custom_env_script in `find ${cdir}/conf/ -name "ranger-usersync-env*"`; do + if [ -f $custom_env_script ]; then + . $custom_env_script + fi +done +if [ -z "${USERSYNC_PID_DIR_PATH}" ]; then + pidf=/var/run/ranger +fi +pidf=${USERSYNC_PID_DIR_PATH}/usersync.pid +if [ -z "${UNIX_USERSYNC_USER}" ]; then + UNIX_USERSYNC_USER=ranger +fi if [ "${action}" == "START" ]; then @@ -37,12 +47,6 @@ if [ "${action}" == "START" ]; then . ${cdir}/conf/java_home.sh fi - for custom_env_script in `find ${cdir}/conf/ -name "ranger-usersync-env*"`; do - if [ -f $custom_env_script ]; then - . $custom_env_script - fi - done - if [ "$JAVA_HOME" != "" ]; then export PATH=$JAVA_HOME/bin:$PATH fi @@ -72,7 +76,7 @@ if [ "${action}" == "START" ]; then if ps -p $VALUE_OF_PID > /dev/null then echo $VALUE_OF_PID > ${pidf} - chown ranger ${pidf} + chown ${UNIX_USERSYNC_USER} ${pidf} chmod 660 ${pidf} pid=`cat $pidf` echo "Apache Ranger Usersync Service with pid ${pid} has started." @@ -85,7 +89,6 @@ elif [ "${action}" == "STOP" ]; then WAIT_TIME_FOR_SHUTDOWN=2 NR_ITER_FOR_SHUTDOWN_CHECK=15 if [ -f $pidf ]; then - pidf=/var/run/ranger/usersync.pid pid=`cat $pidf` > /dev/null 2>&1 kill -9 $pid > /dev/null 2>&1 sleep 1 #Give kill -9 sometime to "kill" http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/d61ef2a0/unixauthservice/scripts/setup.py ---------------------------------------------------------------------- diff --git a/unixauthservice/scripts/setup.py b/unixauthservice/scripts/setup.py index eb7e8f8..673a48f 100755 --- a/unixauthservice/scripts/setup.py +++ b/unixauthservice/scripts/setup.py @@ -35,7 +35,6 @@ if (not 'JAVA_HOME' in os.environ): debugLevel = 1 generateXML = 0 installPropDirName = '.' -pidFolderName = '/var/run/ranger' #logFolderName = '/var/log/ranger' initdDirName = '/etc/init.d' @@ -89,7 +88,7 @@ credUpdateClassName = 'org.apache.ranger.credentialapi.buildks' ENV_LOGDIR_FILE = 'ranger-usersync-env-logdir.sh' hadoopConfFileName = 'core-site.xml' ENV_HADOOP_CONF_FILE = "ranger-usersync-env-hadoopconfdir.sh" - +ENV_PID_FILE = 'ranger-usersync-env-piddir.sh' RANGER_USERSYNC_HOME = os.getenv("RANGER_USERSYNC_HOME") if RANGER_USERSYNC_HOME is None: @@ -323,6 +322,11 @@ def main(): populate_global_dict() logFolderName = globalDict['logdir'] hadoop_conf = globalDict['hadoop_conf'] + pid_dir_path = globalDict['USERSYNC_PID_DIR_PATH'] + unix_user = globalDict['unix_user'] + + if pid_dir_path == "": + pid_dir_path = "/var/run/ranger" if logFolderName.lower() == "$pwd" or logFolderName == "" : logFolderName = os.path.join(os.getcwd(),"logs") @@ -395,12 +399,12 @@ def main(): else: os.makedirs(logFolderName,logFolderPermMode) - if (not os.path.isdir(pidFolderName)): - os.makedirs(pidFolderName,logFolderPermMode) - if (not os.path.isdir(ugsyncLogFolderName)): os.makedirs(ugsyncLogFolderName,logFolderPermMode) + if (not os.path.isdir(pid_dir_path)): + os.makedirs(pid_dir_path,logFolderPermMode) + if (unixUserProp in mergeProps): ownerName = mergeProps[unixUserProp] else: @@ -425,7 +429,6 @@ def main(): os.chown(logFolderName,ownerId,groupId) os.chown(ugsyncLogFolderName,ownerId,groupId) - os.chown(pidFolderName,ownerId,groupId) os.chown(rangerBaseDirName,ownerId,groupId) os.chown(usersyncBaseDirFullName,ownerId,groupId) @@ -498,10 +501,17 @@ def main(): write_env_files("logdir", logFolderName, ENV_LOGDIR_FILE); write_env_files("RANGER_USERSYNC_HADOOP_CONF_DIR", hadoop_conf, ENV_HADOOP_CONF_FILE); + write_env_files("USERSYNC_PID_DIR_PATH", pid_dir_path, ENV_PID_FILE); os.chown(os.path.join(confBaseDirName, ENV_LOGDIR_FILE),ownerId,groupId) os.chmod(os.path.join(confBaseDirName, ENV_LOGDIR_FILE),0755) os.chown(os.path.join(confBaseDirName, ENV_HADOOP_CONF_FILE),ownerId,groupId) os.chmod(os.path.join(confBaseDirName, ENV_HADOOP_CONF_FILE),0755) + os.chown(os.path.join(confBaseDirName, ENV_PID_FILE),ownerId,groupId) + os.chmod(os.path.join(confBaseDirName, ENV_PID_FILE),0755) + + f = open(os.path.join(confBaseDirName, ENV_PID_FILE), "a+") + f.write("\nexport {0}={1}".format("UNIX_USERSYNC_USER",unix_user)) + f.close() hadoop_conf_full_path = os.path.join(hadoop_conf, hadoopConfFileName) usersync_conf_full_path = os.path.join(usersyncBaseDirFullName,confBaseDirName,hadoopConfFileName)