BIGTOP-1037. Provide a mechanism to control the sourcing of defaults files
authorSean Mackrory <mackrorysd@apache.org>
Tue, 30 Jul 2013 18:28:59 +0000 (11:28 -0700)
committerSean Mackrory <mackrorysd@apache.org>
Wed, 7 Aug 2013 20:53:43 +0000 (13:53 -0700)
14 files changed:
bigtop-packages/src/common/bigtop-utils/bigtop-detect-classpath
bigtop-packages/src/common/bigtop-utils/bigtop-detect-javahome
bigtop-packages/src/common/bigtop-utils/bigtop-detect-javalibs
bigtop-packages/src/common/flume/flume-agent.init
bigtop-packages/src/common/hadoop/install_hadoop.sh
bigtop-packages/src/common/hbase/hbase.svc
bigtop-packages/src/common/hbase/install_hbase.sh
bigtop-packages/src/common/hbase/regionserver-init.d.tpl
bigtop-packages/src/common/hcatalog/install_hcatalog.sh
bigtop-packages/src/common/hive/install_hive.sh
bigtop-packages/src/common/pig/install_pig.sh
bigtop-packages/src/common/solr/install_solr.sh
bigtop-packages/src/deb/hue/hue-server.hue.init
bigtop-packages/src/templates/init.d.tmpl

index 7d06170..b962e65 100644 (file)
@@ -15,7 +15,8 @@
 # limitations under the License.
 
 # Add files to BIGTOP_CLASSPATH and they will be prepended to the contents of /var/lib/bigtop
-[ -r /etc/default/bigtop-utils ] && . /etc/default/bigtop-utils
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/bigtop-utils ] && . ${BIGTOP_DEFAULTS_DIR}/bigtop-utils
 
 # Overriding this is not recommended because it has had to be hard-coded in
 # properties files for components that use bigtop-tomcat
index 21b15ef..0467e70 100644 (file)
@@ -17,7 +17,8 @@
 
 # Override JAVA_HOME in the file below if you want to disable
 # automatic JAVA_HOME detection
-[ -r /etc/default/bigtop-utils ] && . /etc/default/bigtop-utils
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/bigtop-utils ] && . ${BIGTOP_DEFAULTS_DIR}/bigtop-utils
 
 # attempt to find java
 if [ -z "$JAVA_HOME" ]; then
index e90fa68..a21021b 100644 (file)
@@ -17,7 +17,8 @@
 
 # Override JAVA_NATIVE_PATH in the file below if you want to disable
 # automatic library detection
-[ -r /etc/default/bigtop-utils ] && . /etc/default/bigtop-utils
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/bigtop-utils ] && . ${BIGTOP_DEFAULTS_DIR}/bigtop-utils
 
 # ensure that java has already been found
 if [ -z "$JAVA_HOME" ]; then
index 1c94aa5..b877434 100644 (file)
@@ -33,9 +33,8 @@
 
 . /lib/lsb/init-functions
 
-if [ -f /etc/default/flume-agent ] ; then
-  . /etc/default/flume-agent
-fi
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/flume-agent ] && . ${BIGTOP_DEFAULTS_DIR}/flume-agent
 
 # Autodetect JAVA_HOME if not defined
 . /usr/lib/bigtop-utils/bigtop-detect-javahome
index ed9cb5c..08ddb52 100755 (executable)
@@ -266,9 +266,8 @@ cat > $fuse_wrapper << EOF
 
 export HADOOP_HOME=\${HADOOP_HOME:-${HADOOP_DIR#${PREFIX}}}
 
-if [ -f /etc/default/hadoop-fuse ]
-then . /etc/default/hadoop-fuse
-fi
+BIGTOP_DEFAULTS_DIR=\${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hadoop-fuse ] && . ${BIGTOP_DEFAULTS_DIR}/hadoop-fuse
 
 export HADOOP_LIBEXEC_DIR=${SYSTEM_LIBEXEC_DIR#${PREFIX}}
 
index 93b776d..49385d4 100644 (file)
@@ -27,7 +27,8 @@ cat <<'__EOT__'
 
 hbase_env() {
     export HBASE_HOME=/usr/lib/hbase
-    . /etc/default/hbase
+    BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+    [ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hbase ] && . ${BIGTOP_DEFAULTS_DIR}/hbase
 }
 
 __EOT__
index f23cd27..3968b99 100755 (executable)
@@ -140,7 +140,8 @@ mkdir -p `dirname $wrapper`
 cat > $wrapper <<EOF
 #!/bin/sh
 
-. /etc/default/hbase
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hbase ] && . ${BIGTOP_DEFAULTS_DIR}/hbase
 
 # Autodetect JAVA_HOME if not defined
 . /usr/lib/bigtop-utils/bigtop-detect-javahome
index 7a21126..82c1487 100644 (file)
@@ -47,8 +47,9 @@
 # Short-Description: Hadoop HBase @HBASE_DAEMON@ daemon
 ### END INIT INFO
 
-. /etc/default/hadoop
-. /etc/default/hbase
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hadoop ] && . ${BIGTOP_DEFAULTS_DIR}/hadoop
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hbase ] && . ${BIGTOP_DEFAULTS_DIR}/hbase
 
 # Autodetect JAVA_HOME if not defined
 . /usr/lib/bigtop-utils/bigtop-detect-javahome
index aa9fc5b..20f8ad1 100644 (file)
@@ -114,13 +114,11 @@ done
 
 wrapper=${PREFIX}/$BIN_DIR/hcat
 cat >>$wrapper <<EOF
-#!/bin/sh
-. /etc/default/hadoop
+#!/bin/bash
 
-# look for HBase
-if [ -f /etc/default/hbase ] ; then
-  . /etc/default/hbase
-fi
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hadoop ] && . ${BIGTOP_DEFAULTS_DIR}/hadoop
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hbase ] && . ${BIGTOP_DEFAULTS_DIR}/hbase
 
 # Autodetect JAVA_HOME if not defined
 . /usr/lib/bigtop-utils/bigtop-detect-javahome
index 745c760..3d987fa 100755 (executable)
@@ -118,15 +118,13 @@ for file in hive
 do
   wrapper=${PREFIX}/$BIN_DIR/$file
   cat >>$wrapper <<EOF
-#!/bin/sh
+#!/bin/bash
 
 # Autodetect JAVA_HOME if not defined
 . /usr/lib/bigtop-utils/bigtop-detect-javahome
 
-# look for HBase
-if [ -f /etc/default/hbase ] ; then
-  . /etc/default/hbase
-fi
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hbase ] && . ${BIGTOP_DEFAULTS_DIR}/hbase
 
 export HIVE_HOME=$INSTALLED_LIB_DIR
 exec $INSTALLED_LIB_DIR/bin/$file "\$@"
index c3068f6..6561647 100644 (file)
@@ -134,10 +134,8 @@ cat > $PREFIX/$BIN_DIR/pig <<EOF
 # Autodetect JAVA_HOME if not defined
 . /usr/lib/bigtop-utils/bigtop-detect-javahome
 
-# look for HBase
-if [ -f /etc/default/hbase ] ; then
-  . /etc/default/hbase
-fi
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/hbase ] && . ${BIGTOP_DEFAULTS_DIR}/hbase
 
 exec $INSTALLED_LIB_DIR/bin/pig "\$@"
 EOF
index 4e09e40..3e27c3b 100644 (file)
@@ -148,9 +148,10 @@ cp -ra ${BUILD_DIR}/example/solr/* $PREFIX/${CONF_DIR}.dist
 
 # Copy in the wrapper
 cat > $PREFIX/$LIB_DIR/bin/solrd <<EOF
-#!/bin/sh
+#!/bin/bash
 
-[ -f /etc/default/solr ] && . /etc/default/solr
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/solr ] && . ${BIGTOP_DEFAULTS_DIR}/solr
 
 # Autodetect JAVA_HOME if not defined
 . /usr/lib/bigtop-utils/bigtop-detect-javahome
index e9b11a8..f104ddb 100644 (file)
@@ -63,9 +63,8 @@ DAEMONUSER=hue     # Users to run the daemons as. If this value
                         # is set start-stop-daemon will chuid the server
 
 # Include defaults if available
-if [ -f /etc/default/$NAME ] ; then
-    . /etc/default/$NAME
-fi
+BIGTOP_DEFAULTS_DIR=${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "${BIGTOP_DEFAULTS_DIR}" -a -r ${BIGTOP_DEFAULTS_DIR}/$NAME ] && . ${BIGTOP_DEFAULTS_DIR}/$NAME
 
 # Use this if you want the user to explicitly set 'RUN' in
 # /etc/default/
index cd5e592..39e4f4c 100644 (file)
@@ -180,11 +180,9 @@ cat <<__EOT__
 ### END INIT INFO
 
 . /lib/lsb/init-functions
-. /etc/default/hadoop
-
-if [ -f /etc/default/$DAEMON ] ; then
-  . /etc/default/$DAEMON
-fi
+BIGTOP_DEFAULTS_DIR=\${BIGTOP_DEFAULTS_DIR-/etc/default}
+[ -n "\${BIGTOP_DEFAULTS_DIR}" -a -r \${BIGTOP_DEFAULTS_DIR}/hadoop ] && . \${BIGTOP_DEFAULTS_DIR}/hadoop
+[ -n "\${BIGTOP_DEFAULTS_DIR}" -a -r \${BIGTOP_DEFAULTS_DIR}/$DAEMON ] && . \${BIGTOP_DEFAULTS_DIR}/$DAEMON
 
 # Autodetect JAVA_HOME if not defined
 if [ -e /usr/libexec/bigtop-detect-javahome ]; then