SOURCES: pld-builder.init, pld-builder.sysconfig - minimize: handle only /p...

glen glen at pld-linux.org
Wed Oct 29 00:44:41 CET 2008


Author: glen                         Date: Tue Oct 28 23:44:41 2008 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- minimize: handle only /proc mounting

---- Files affected:
SOURCES:
   pld-builder.init (1.7 -> 1.8) , pld-builder.sysconfig (1.8 -> 1.9) 

---- Diffs:

================================================================
Index: SOURCES/pld-builder.init
diff -u SOURCES/pld-builder.init:1.7 SOURCES/pld-builder.init:1.8
--- SOURCES/pld-builder.init:1.7	Wed Jun 25 23:09:35 2008
+++ SOURCES/pld-builder.init	Wed Oct 29 00:44:35 2008
@@ -1,73 +1,89 @@
 #!/bin/sh
 #
-# pld-builder	perform adminstrator's tasks for pld-builder
+# pld-builder	perform adminstrator's tasks for PLD Linux Builder
 #
 # chkconfig:	345 99 01
 #
-# description:	perform adminstrator's tasks for pld-builder
+# description:	perform adminstrator's tasks for PLD Linux Builder
 
 
 # Source function library
 . /etc/rc.d/init.d/functions
 
-# define shell functions listed below on your own in /etc/sysconfig/pld-builder
-pld_builder_start () ok
-pld_builder_reload () ok
-pld_builder_restart () ok
-pld_builder_status () :
-pld_builder_stop () ok
+# Defaults
+CHROOTS=
 
 # Get service config - may override defaults
 [ -f /etc/sysconfig/pld-builder ] && . /etc/sysconfig/pld-builder
 
+mount_chroots() {
+	# mount /proc in chroots
+	local ret
+	for CHROOT in $CHROOTS; do
+		show "chroot: %s mount /proc" "$CHROOT"
+		ret=$(chroot $CHROOT mount /proc > /dev/null 2>&1; echo $?)
+		[ $ret -eq 0 ] && ok || fail
+	done
+}
+
+umount_chroots() {
+	local ret
+	for CHROOT in $CHROOTS; do
+		show "chroot: %s umount /proc" "$CHROOT"
+		ret=$(chroot $CHROOT umount /proc > /dev/null 2>&1; echo $?)
+		[ $ret -eq 0 ] && ok || fail
+	done
+}
+
+chroots_status() {
+	local ret
+	for CHROOT in $CHROOTS; do
+		show "chroot: %s is /proc mounted?" "$CHROOT"
+		ret=$(chroot $CHROOT mount -v 2> /dev/null | grep -q 'none.*/proc'; echo $?)
+		[ $ret -eq 0 ] && ok || fail
+	done
+}
+
 start() {
 	# Check if the service is already running?
 	if [ ! -f /var/lock/subsys/pld-builder ]; then
-		msg_starting pld-builder
-		busy
-		pld_builder_start
-		RETVAL=0
+		if [ -z "$CHROOTS" ]; then
+			# no chroots configured. return and be silent
+			return
+		fi
+		msg_starting "PLD Linux Builder"
+		busy; echo
+		mount_chroots
+		RETVAL=$?
 		[ $RETVAL -eq 0 ] && touch /var/lock/subsys/pld-builder
 	else
-		msg_already_running pld-builder
+		msg_already_running "PLD Linux Builder"
 	fi
 }
 
 stop() {
 	if [ -f /var/lock/subsys/pld-builder ]; then
 		# Stop daemons.
-		msg_stopping pld-builder
-		busy
-		pld_builder_stop
+		msg_stopping "PLD Linux Builder"
+		busy; echo
+		umount_chroots
 		RETVAL=0
 		rm -f /var/lock/subsys/pld-builder
 	else
-		msg_not_running pld-builder
+		msg_not_running "PLD Linux Builder"
 	fi
 }
 
-
 condrestart() {
 	if [ -f /var/lock/subsys/pld-builder ]; then
 		stop
 		start
 	else
-		msg_not_running pld-builder
+		msg_not_running "PLD Linux Builder"
 		RETVAL=$1
 	fi
 }
 
-reload() {
-	if [ -f /var/lock/subsys/pld-builder ]; then
-		msg_reloading pld-builder
-		pld_builder_reload
-		RETVAL=$?
-	else
-		msg_not_running pld-builder
-		RETVAL=7
-	fi
-}
-
 # See how we were called.
 case "$1" in
   start)
@@ -79,7 +95,6 @@
   restart)
 	stop
 	start
-	exit $?
 	;;
   try-restart)
 	condrestart 0
@@ -88,7 +103,7 @@
   	reload
 	;;
   status)
-	pld_builder_status
+	chroots_status
 	RETVAL=$?
 	;;
   *)

================================================================
Index: SOURCES/pld-builder.sysconfig
diff -u SOURCES/pld-builder.sysconfig:1.8 SOURCES/pld-builder.sysconfig:1.9
--- SOURCES/pld-builder.sysconfig:1.8	Sat Jul 19 16:36:43 2008
+++ SOURCES/pld-builder.sysconfig	Wed Oct 29 00:44:35 2008
@@ -1,107 +1,3 @@
-#!/bin/sh without shebang autoindentation doesn't work (vim-7.0-0.c02.1.3)
-# -*- mode: sh -*-
+# define chroots whose /proc to mount on startup
 
-# comment next line to configure your setup
-: <<'#END'
-
-CHROOTS=/mnt/hda9/adm/builders/pld/{ac/{athlon,i586},actw/{athlon,i586},th/{athlon,i486}}
-FTPDIRS=/mnt/hda9/adm/builders/pld/ftp/ftp/{{ac,actw}/{ready,test}/{SRPMS,athlon,i586},th/{ready,test}/{SRPMS,athlon,i486}}
-
-NICE="nice -n 19"
-
-bin_builder_tmpwatch_cron_jobs () {
-	local hour=0
-	for CHROOT in $CHROOTS; do
-		[ $hour -gt 23 ] && hour=0
-		echo "0 $hour * * * sudo chroot $CHROOT $NICE tmpwatch -m 240 /spool/poldek"
-		hour=$(( $hour + 1 ))
-	done
-}
-
-ftp_update_indexes_cron_jobs () {
-	local minute=0
-	for FTPDIR in $FTPDIRS; do
-		[ $minute -gt 59 ] && minute=0
-		echo "$minute * * * * /bin/sh -c \"umask 022; $NICE /usr/bin/poldek --mkidx -s $FTPDIR\""
-		minute=$(( $minute + 1 ))
-	done
-}
-
-pld_builder_start () {
-	# mount /proc in chroots
-	local RET
-	echo
-	for CHROOT in $CHROOTS; do
-		show "chroot: %s mount /proc" "$CHROOT"
-		RET=$(chroot $CHROOT mount /proc > /dev/null 2>&1 ; echo $?)
-	[ $RET -eq 0 ] && ok || fail
-	done
-
-	# set up crontab for srpms_builder
-	show "setting up crontab for srpms_builder"
-	crontab -u srpms_builder - <<- EOF && ok || fail
-	#### WARNING: This file is autogenerated.
-	#### WARNING: Do not make changes here.
-	#### WARNING: Make them to /etc/sysconfig/pld-builder instead.
-	SHELL=/bin/sh
-	MAILTO=srpms_builder
-
-	* * * * * exec $NICE /usr/share/pld-builder/bin/src-builder.sh
-	* * * * * exec $NICE /usr/share/pld-builder/bin/file-sender.sh
-EOF
-
-	# set up crontab for bin_builder
-	show "setting up crontab for bin_builder"
-	crontab -u bin_builder - <<-EOF && ok || fail
-	#### WARNING: This file is autogenerated.
-	#### WARNING: Do not make changes here.
-	#### WARNING: Make them to /etc/sysconfig/pld-builder instead.
-	SHELL=/bin/sh
-	MAILTO=bin_builder
-
-	* * * * * exec $NICE /usr/share/pld-builder/bin/request-fetcher.sh
-	* * * * * exec $NICE /usr/share/pld-builder/bin/load-balancer.sh
-	* * * * * exec $NICE /usr/share/pld-builder/bin/file-sender.sh
-
-	$(bin_builder_tmpwatch_cron_jobs)
-EOF
-
-	# set up crontab for ftpac
-	show "setting up crontab for ftp"
-	crontab -u ftpac - <<-EOF && ok || fail
-	#### WARNING: This file is autogenerated.
-	#### WARNING: Do not make changes here.
-	#### WARNING: Make them to /etc/sysconfig/pld-builder instead.
-	SHELL=/bin/sh
-	MAILTO=ftpac
-
-	$(ftp_update_indexes_cron_jobs)
-EOF
-}
-
-pld_builder_stop () {
-	local RET
-	echo
-	for CHROOT in $CHROOTS; do
-		show "chroot: %s umount /proc" "$CHROOT"
-		RET=$(chroot $CHROOT umount /proc > /dev/null 2>&1; echo $?)
-		[ $RET -eq 0 ] && ok || fail
-	done
-
-	for u in srpms_builder bin_builder ftpac; do
-		show "removing crontab for %s" "$u"
-		crontab -u $u -r > /dev/null 2>&1 && ok || fail
-	done
-}
-
-pld_builder_status () {
-	local RET
-	echo
-	for CHROOT in $CHROOTS; do
-		show "chroot: %s is /proc mounted?" "$CHROOT"
-		RET=$(chroot $CHROOT mount -v 2> /dev/null | grep -q 'none.*/proc'; echo $?)
-		[ $RET -eq 0 ] && ok || fail
-	done
-}
-
-#END
+#CHROOTS=/mnt/hda9/adm/builders/pld/{ac/{athlon,i586},actw/{athlon,i586},th/{athlon,i486}}
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/pld-builder.init?r1=1.7&r2=1.8&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/pld-builder.sysconfig?r1=1.8&r2=1.9&f=u



More information about the pld-cvs-commit mailing list