Title: [opsview] [9640] We force opsview-web to only return when server is ready.
Revision
9640
Author
tvoon
Date
2012-07-27 15:37:38 +0100 (Fri, 27 Jul 2012)

Log Message

We force opsview-web to only return when server is ready. The arbitrary sleep
introduced in the tests is now removed

Modified Paths

Modified: trunk/Makefile
===================================================================
--- trunk/Makefile	2012-07-27 14:17:32 UTC (rev 9639)
+++ trunk/Makefile	2012-07-27 14:37:38 UTC (rev 9640)
@@ -258,8 +258,6 @@
 
 junit:
 	opsview-web/bin/opsview-web start
-	# Let opsview-web have a chance to startup before the tests start deleting the database
-	sleep 60
 	FULL_RUN=1 PERL5LIB=/usr/local/nagios/perl/lib perl -e 'use lib "/home/nagios/perl5/lib/perl5"; use TAP::Harness::JUnit; my $$h = TAP::Harness::JUnit->new( { xmlfile => "junitResults.xml", merge => 1 } ); $$h->runtests(@ARGV)' opsview-core/t/*.t opsview-web/t/*.t
 	opsview-web/bin/opsview-web stop
 	opsview-core/bin/rc.opsview stop

Modified: trunk/opsview-web/bin/opsview-web
===================================================================
--- trunk/opsview-web/bin/opsview-web	2012-07-27 14:17:32 UTC (rev 9639)
+++ trunk/opsview-web/bin/opsview-web	2012-07-27 14:37:38 UTC (rev 9640)
@@ -68,11 +68,11 @@
         RETVAL=0
     else
         args="-f --background --pidfile $pidfile --host $BIND_ADDRESS"
-	wrapper=""
-    if [ -x opsview-web-server ] ; then
-        wrapper="./opsview-web-server"
-    fi
-		printf "Starting opsview-web: "
+        wrapper=""
+        if [ -x opsview-web-server ] ; then
+            wrapper="./opsview-web-server"
+        fi
+        printf "Starting opsview-web: "
 		if [ "$USE_LIGHTTPD" = "0" ] && [ "$USE_PREFORK" = "0" ]; then
 			$wrapper script/opsview_web_server.pl $args
 			RETVAL=$?
@@ -86,6 +86,22 @@
 				RETVAL=$?
 			fi
 		fi
+
+        # Catalyst 5.9 returns back very quickly, before server is ready
+        # We cause this to wait until the server is ready by checking for pid file
+        COUNT=30
+        while true; do
+            status >/dev/null 2>&1
+            if [ $? = 0 ]; then
+                break
+            fi
+            if [ $COUNT -lt 1 ]; then
+                echo "..."
+                break
+            fi
+            COUNT=`expr $COUNT - 1`
+            sleep 1
+        done
         echo "done"
 	fi
 	return $RETVAL

_______________________________________________
Opsview-checkins mailing list
[email protected]
http://lists.opsview.org/lists/listinfo/opsview-checkins

Reply via email to