[Cluster-devel] conga conga.spec.in.in

rmccabe at sourceware.org rmccabe at sourceware.org
Sat Aug 11 04:22:03 UTC 2007


CVSROOT:	/cvs/cluster
Module name:	conga
Branch: 	RHEL4
Changes by:	rmccabe at sourceware.org	2007-08-11 04:22:03

Modified files:
	.              : conga.spec.in.in 

Log message:
	Fix a longstanding bug that caused the luci database to not be restored properly upon upgrade unless a backup had been made previous to the upgrade.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/conga/conga.spec.in.in.diff?cvsroot=cluster&only_with_tag=RHEL4&r1=1.67.2.13&r2=1.67.2.14

--- conga/conga.spec.in.in	2007/08/09 22:34:58	1.67.2.13
+++ conga/conga.spec.in.in	2007/08/11 04:22:03	1.67.2.14
@@ -139,18 +139,37 @@
 %endif
 
 %pre -n luci
-if ! /bin/grep ^luci\:x /etc/group >&/dev/null; then
+grep ^luci\:x /etc/group >&/dev/null
+if [ $? -ne 0 ]; then 
 	/usr/sbin/groupadd -r -f luci >&/dev/null
 fi
-if ! /bin/grep ^luci\:x /etc/passwd >&/dev/null; then
+
+grep ^luci\:x /etc/passwd >&/dev/null
+if [ $? -ne 0 ]; then
 	/usr/sbin/useradd -r -M -s /sbin/nologin -d /var/lib/luci -g luci luci >&/dev/null
 fi
 
+if [ $1 -gt 1 ]; then
+	# Package upgrade
+	/sbin/service luci status >&/dev/null
+	LUCI_RUNNING=$?
+	if [ $LUCI_RUNNING -eq 0 ]; then
+		/sbin/service luci stop >& /dev/null
+		# allow the zope machinery time to shut down
+		sleep 4
+	fi
+	/usr/sbin/luci_admin backup >&/dev/null
+	if [ $LUCI_RUNNING -eq 0 ]; then
+		/sbin/service luci start >& /dev/null
+	fi
+fi
+exit 0
+
 %post -n luci
 /sbin/chkconfig --add luci
 /sbin/service luci status >&/dev/null
 LUCI_RUNNING=$?
-if [ "$LUCI_RUNNING" == "0" ]; then
+if [ $LUCI_RUNNING -eq 0 ]; then
 	/sbin/service luci stop >&/dev/null
 fi
 if [ -f /var/lib/luci/var/luci_backup.xml ]; then
@@ -162,28 +181,30 @@
 grep True /var/lib/luci/.default_password_has_been_reset >&/dev/null
 if [ $? -ne 0 ]; then
 	/usr/sbin/luci_admin password --random >&/dev/null &&
-		rm -f /var/lib/luci/var/Data.fs.index /var/lib/luci/var/Data.fs.tmp /var/lib/luci/var/Data.fs.old
-	find %{_libdir}/luci/zope/var -print0 2>/dev/null | xargs -0 chown luci:
+		rm -f /var/lib/luci/var/Data.fs.index /var/lib/luci/var/Data.fs.tmp /var/lib/luci/var/Data.fs.old >& /dev/null
+	find %{_libdir}/luci/zope/var -print0 2>/dev/null | xargs -0 chown luci: >&/dev/null
 fi
-if [ "$LUCI_RUNNING" == "0" ]; then
+if [ $LUCI_RUNNING -eq 0 ]; then
 	/sbin/service luci start >&/dev/null
 fi
+exit 0
 
 %preun -n luci
-if [ "$1" == "0" ]; then
+if [ $1 -eq 0 ]; then
+	# uninstall
 	/sbin/service luci stop >&/dev/null
 	/sbin/chkconfig --del luci
-fi
-/sbin/service luci status >&/dev/null
-LUCI_RUNNING=$?
-if [ "$LUCI_RUNNING" == "0" ]; then
-	/sbin/service luci stop >&/dev/null
-fi
-/usr/sbin/luci_admin backup >&/dev/null
-if [ "$LUCI_RUNNING" == "0" ]; then
-	/sbin/service luci start >&/dev/null
-fi
 
+	/sbin/service luci status >&/dev/null
+	LUCI_RUNNING=$?
+	if [ $LUCI_RUNNING -eq 0 ]; then
+		/sbin/service luci stop >&/dev/null
+		# allow the zope machinery time to shut down
+		sleep 4
+	fi
+	/usr/sbin/luci_admin backup >&/dev/null
+fi
+exit 0
 
 
 
@@ -262,18 +283,21 @@
 if ! /bin/grep ^ricci\:x /etc/passwd >&/dev/null; then
 	/usr/sbin/useradd -r -M -s /sbin/nologin -d /var/lib/ricci -g ricci ricci >&/dev/null
 fi
+exit 0
 
 %post -n ricci
 DBUS_PID=`cat /var/run/messagebus.pid 2>/dev/null`
 /bin/kill -s SIGHUP $DBUS_PID >&/dev/null
 /sbin/service oddjobd reload >&/dev/null
 /sbin/chkconfig --add ricci
+exit 0
 
 %preun -n ricci
 if [ "$1" == "0" ]; then
 	/sbin/service ricci stop >&/dev/null
 	/sbin/chkconfig --del ricci
 fi
+exit 0
 
 %postun -n ricci
 if [ "$1" == "0" ]; then
@@ -284,7 +308,7 @@
 if [ "$1" == "1" ]; then
 	/sbin/service ricci condrestart >&/dev/null
 fi
-
+exit 0
 
 
 




More information about the Cluster-devel mailing list