Improve RPM packaging, init scripts. SERVER-575, SERVER-576.
This commit is contained in:
@@ -12,30 +12,37 @@
|
||||
|
||||
# things from mongod.conf get there by mongod reading it
|
||||
|
||||
|
||||
|
||||
OPTIONS=" -f /etc/mongod.conf"
|
||||
SYSCONFIG="/etc/sysconfig/mongod"
|
||||
|
||||
mongod=${MONGOD-/usr/bin/mongod}
|
||||
pidfile=${PIDFILE-/var/run/mongod.pid}
|
||||
lockfile=${LOCKFILE-/var/lock/subsys/mongod}
|
||||
|
||||
MONGO_USER=mongod
|
||||
MONGO_GROUP=mongod
|
||||
|
||||
. "$SYSCONFIG" || true
|
||||
|
||||
start()
|
||||
{
|
||||
echo -n $"Starting mongod: "
|
||||
#daemon --pidfile=${pidfile} $mongod $OPTIONS > /var/log/mongod
|
||||
$mongod $OPTIONS > /var/log/mongod 2>&1 &
|
||||
daemon --user "$MONGO_USER" $mongod $OPTIONS
|
||||
RETVAL=$?
|
||||
[ $RETVAL = 0 ] && touch ${lockfile}
|
||||
echo OK
|
||||
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/mongod && success
|
||||
}
|
||||
|
||||
stop()
|
||||
{
|
||||
echo -n $"Stopping mongod: "
|
||||
#killproc -p ${pidfile} -d 10 $mongod
|
||||
#RETVAL=$?
|
||||
killall mongod > /dev/null 2>&1
|
||||
#[ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
|
||||
echo OK
|
||||
killproc -p /var/lib/mongo/mongod.lock -t30 -TERM /usr/bin/mongod
|
||||
RETVAL=$?
|
||||
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/mongod &7 success
|
||||
}
|
||||
|
||||
restart () {
|
||||
stop
|
||||
start
|
||||
}
|
||||
|
||||
ulimit -n 12000
|
||||
@@ -48,15 +55,17 @@ case "$1" in
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
start
|
||||
restart|reload|force-reload)
|
||||
restart
|
||||
;;
|
||||
condrestart)
|
||||
[ -f /var/lock/subsys/mongodb ] && restart || :
|
||||
;;
|
||||
status)
|
||||
status $mongod
|
||||
;;
|
||||
# status)
|
||||
# status -p ${pidfile} $mongod
|
||||
# ;;
|
||||
*)
|
||||
echo $"Usage: $0 {start|stop|restart}"
|
||||
echo "Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
|
||||
RETVAL=1
|
||||
esac
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@ client utilities.
|
||||
%package server
|
||||
Summary: mongo server, sharding server, and support scripts
|
||||
Group: Applications/Databases
|
||||
Requires: mongo
|
||||
|
||||
%description server
|
||||
Mongo (from "huMONGOus") is a schema-free document-oriented database.
|
||||
@@ -59,16 +60,16 @@ cp rpm/mongod.conf $RPM_BUILD_ROOT/etc/mongod.conf
|
||||
mkdir -p $RPM_BUILD_ROOT/etc/sysconfig
|
||||
cp rpm/mongod.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/mongod
|
||||
mkdir -p $RPM_BUILD_ROOT/var/lib/mongo
|
||||
mkdir -p $RPM_BUILD_ROOT/var/log
|
||||
touch $RPM_BUILD_ROOT/var/log/mongo
|
||||
mkdir -p $RPM_BUILD_ROOT/var/log/mongo
|
||||
touch $RPM_BUILD_ROOT/var/log/mongo/mongod.log
|
||||
|
||||
%clean
|
||||
scons -c
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%pre server
|
||||
#/usr/sbin/useradd -M -o -r -d /var/lib/mongo -s /bin/bash \
|
||||
# -c "mongod" mongod > /dev/null 2>&1 || :
|
||||
/usr/sbin/useradd -M -r -U -d /var/lib/mongo -s /bin/false \
|
||||
-c mongod mongod > /dev/null 2>&1
|
||||
|
||||
%post server
|
||||
if test $1 = 1
|
||||
@@ -120,8 +121,9 @@ fi
|
||||
/etc/rc.d/init.d/mongod
|
||||
/etc/sysconfig/mongod
|
||||
#/etc/rc.d/init.d/mongos
|
||||
%attr(0755,root,root) %dir /var/lib/mongo
|
||||
%attr(0640,root,root) %config(noreplace) %verify(not md5 size mtime) /var/log/mongo
|
||||
%attr(0755,mongod,mongod) %dir /var/lib/mongo
|
||||
%attr(0755,mongod,mongod) %dir /var/log/mongo
|
||||
%attr(0640,mongod,mongod) %config(noreplace) %verify(not md5 size mtime) /var/log/mongo/mongod.log
|
||||
|
||||
%files devel
|
||||
/usr/include/mongo
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
# mongo.conf
|
||||
|
||||
#where to log
|
||||
logpath=/var/log/mongod
|
||||
logpath=/var/log/mongo/mongod.log
|
||||
|
||||
# fork and run in background
|
||||
fork = true
|
||||
|
||||
#port = 27017
|
||||
|
||||
|
||||
Reference in New Issue
Block a user