Ver código fonte

AMBARI-13984. Ambari-server/agent prefer python2.7 over default python version (aonishuk)

Andrew Onishuk 10 anos atrás
pai
commit
2fd574039a

+ 3 - 11
ambari-agent/conf/unix/ambari-agent

@@ -40,6 +40,7 @@ export AMBARI_CONF_DIR=/etc/ambari-server/conf:$PATH
 export PYTHONPATH=/usr/lib/python2.6/site-packages:$PYTHONPATH
 
 AMBARI_AGENT=ambari-agent
+PYTHON_WRAP=/var/lib/ambari-agent/ambari-python-wrap
 PIDFILE=/var/run/ambari-agent/$AMBARI_AGENT.pid
 OUTFILE=/var/log/ambari-agent/ambari-agent.out
 LOGFILE=/var/log/ambari-agent/ambari-agent.log
@@ -74,17 +75,8 @@ change_files_permissions() {
 	ambari-sudo.sh chown 	$current_user "/usr/lib/ambari-agent/"
 }
 
-if [ -a /usr/bin/python2.7 ] && [ -z "$PYTHON" ]; then
-  PYTHON=/usr/bin/python2.7
-fi
-
-if [ -a /usr/bin/python2.6 ] && [ -z "$PYTHON" ]; then
-  PYTHON=/usr/bin/python2.6
-fi
-
-if [ "x$PYTHON" == "x" ]; then
-  PYTHON=/usr/bin/python
-fi
+# fills $PYTHON
+. $PYTHON_WRAP -V 2>/dev/null
 
 export PYTHON=$PYTHON
 

+ 3 - 0
ambari-agent/conf/unix/ambari-env.sh

@@ -18,3 +18,6 @@
 AMBARI_PASSPHRASE="DEV"
 export PATH=$PATH:/var/lib/ambari-agent
 export PYTHONPATH=$PYTHONPATH:/usr/lib/python2.6/site-packages
+
+# customize python binary for ambari
+# export PYTHON=/usr/bin/python2

+ 0 - 3
ambari-common/src/main/unix/ambari-python-wrap

@@ -19,9 +19,6 @@
 
 export PYTHONPATH=/usr/lib/python2.6/site-packages:/usr/lib/python2.6/site-packages/ambari_commons:$PYTHONPATH
 
-# reset settings
-unset PYTHON
-
 # checking for default Python 2
 if [ -a /usr/bin/python2 ] && [ -z "$PYTHON" ]; then
   PYTHON=/usr/bin/python2

+ 4 - 0
ambari-server/conf/unix/ambari-env.sh

@@ -17,5 +17,9 @@
 AMBARI_PASSHPHRASE="DEV"
 export AMBARI_JVM_ARGS=$AMBARI_JVM_ARGS' -Xms512m -Xmx2048m -Djava.security.auth.login.config=/etc/ambari-server/conf/krb5JAASLogin.conf -Djava.security.krb5.conf=/etc/krb5.conf -Djavax.security.auth.useSubjectCredsOnly=false'
 export PATH=$PATH:/var/lib/ambari-server
+
+# customize python binary for ambari
+# export PYTHON=/usr/bin/python2
+
 # to add additional directory or jar to server classpath use SERVER_CLASSPATH variable
 # export SERVER_CLASSPATH=/etc/hadoop/conf/secure

+ 3 - 14
ambari-server/sbin/ambari-server

@@ -37,26 +37,15 @@ esac
 
 export PATH=/usr/lib/ambari-server/*:$PATH:/sbin/:/usr/sbin
 export AMBARI_CONF_DIR=/etc/ambari-server/conf
+PYTHON_WRAP=/var/lib/ambari-server/ambari-python-wrap
 
-# Because Ambari rpm unpacks modules here on all systems
-export PYTHONPATH=/usr/lib/python2.6/site-packages:$PYTHONPATH
-
-if [ -a /usr/bin/python2.7 ] && [ -z "$PYTHON" ]; then
-  PYTHON=/usr/bin/python2.7
-fi
-
-if [ -a /usr/bin/python2.6 ] && [ -z "$PYTHON" ]; then
-  PYTHON=/usr/bin/python2.6
-fi
+# fills $PYTHON
+. $PYTHON_WRAP -V 2>/dev/null
 
 if [ -a /var/lib/ambari-server/ambari-env.sh ]; then
   . /var/lib/ambari-server/ambari-env.sh
 fi
 
-if [ -z "$PYTHON" ]; then
-  PYTHON=/usr/bin/python
-fi
-
 if [ -z "$AMBARI_PASSPHRASE" ]; then
   AMBARI_PASSPHRASE="DEV"
 fi