blob: e6751f7ae5ae033d7f60952d06b5c9739023fec4 [file] [log] [blame]
#!/bin/sh
##
#
#/*
# * Licensed to the Apache Software Foundation (ASF) under one
# * or more contributor license agreements. See the NOTICE file
# * distributed with this work for additional information
# * regarding copyright ownership. The ASF licenses this file
# * to you under the Apache License, Version 2.0 (the
# * "License"); you may not use this file except in compliance
# * with the License. You may obtain a copy of the License at
# *
# * http://www.apache.org/licenses/LICENSE-2.0
# *
# * Unless required by applicable law or agreed to in writing, software
# * distributed under the License is distributed on an "AS IS" BASIS,
# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# * See the License for the specific language governing permissions and
# * limitations under the License.
# */
#
# RPM Init file for Ambari
#
PATH=/usr/bin:/sbin:/bin:/usr/sbin
export PATH
[ -f /etc/sysconfig/puppet ] && . /etc/sysconfig/puppet
lockfile=${LOCKFILE-/var/lock/subsys/puppet}
pidfile=${PIDFILE-/var/run/puppet/agent.pid}
puppetd=${PUPPETD-/usr/bin/puppet}
RETVAL=0
# Source function library.
. /etc/rc.d/init.d/functions
# Determine if we can use the -p option to daemon, killproc, and status.
# RHEL < 5 can't.
if status | grep -q -- '-p' 2>/dev/null; then
daemonopts="--pidfile $pidfile"
pidopts="-p $pidfile"
fi
# copy the configs in the right config dir for puppet
cp /etc/puppet/auth.conf /etc/puppet/master/
cp /etc/puppet/puppet.conf /etc/puppet/master/
checkHDPRepo() {
if [[ ! -f /etc/yum.repos.d/hdp.repo ]]; then
echo "Please install the HDP repo before starting Ambari"
exit 1
fi
}
bootPuppet() {
if [[ ! -f /var/run/hmc/puppetmaster.boot ]]; then
daemon $daemonopts $puppetd ${PUPPET_OPTS} ${PUPPET_EXTRA_OPTS}
killproc puppet
touch /var/run/hmc/puppetmaster.boot
fi
}
checkJDK() {
jdk64="jdk-6u26-linux-x64.bin"
jdk32="jdk-6u26-linux-i586.bin"
if [[ ! -f /var/run/hmc/downloads/$jdk64 || ! -f /var/run/hmc/downloads/$jdk32 ]]; then
echo "Please download $jdk64 and $jdk32 from Oracle to /var/run/hmc/downloads/"
exit 1
fi
mkdir -p /var/www/html/downloads
cp /var/run/hmc/downloads/* /var/www/html/downloads/
}
PUPPET_OPTS="master --confdir=/etc/puppet/master --verbose --config_version=/usr/share/hmc/bin/get_revision --reports hmcreport --debug --logdest=/var/log/puppet_master.log --autoflush"
case "$1" in
start)
checkHDPRepo
checkJDK
bootPuppet
echo "Starting Ambari Installer "
/etc/init.d/httpd start
RETVAL=$?
if [ $RETVAL = 0 ]; then
echo -n "Starting Ambari"
else
echo -n "Failed to start Ambari"
fi
echo
;;
stop)
echo "Shutting down Ambari"
/etc/init.d/httpd stop
RETVAL=$?
if [ $RETVAL = 0 ]; then
echo -n "Stopped Ambari"
else
echo -n "Failed to stop Ambari"
fi
echo
;;
try-restart|condrestart)
if test "$1" = "condrestart"; then
echo "${attn} Use try-restart ${done}(LSB)${attn} rather than condrestart ${warn}(RH)${norm}"
fi
$0 status
if test $? = 0; then
$0 restart
else
: # Not running is not a failure.
fi
;;
restart)
$0 stop
$0 start
;;
force-reload)
echo -n "Reload service Ambari"
$0 try-restart
;;
reload)
$0 restart
;;
status)
status httpd
RETVAL=$?
;;
probe)
echo "Not Implemented"
;;
*)
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
exit 1
;;
esac
exit $RETVAL