Browse code

Merge "XenAPI: Fix race condition on tailing stack.log"

Jenkins authored on 2014/07/22 07:12:33
Showing 1 changed files
... ...
@@ -382,10 +382,16 @@ if [ "$WAIT_TILL_LAUNCH" = "1" ]  && [ -e ~/.ssh/id_rsa.pub  ] && [ "$COPYENV" =
382 382
     while ! ssh_no_check -q stack@$OS_VM_MANAGEMENT_ADDRESS "service devstack status | grep -q running"; do
383 383
         sleep 10
384 384
     done
385
-    echo -n "devstack is running"
385
+    echo -n "devstack service is running, waiting for stack.sh to start logging..."
386
+
387
+    while ! ssh_no_check -q stack@$OS_VM_MANAGEMENT_ADDRESS "test -e /tmp/devstack/log/stack.log"; do
388
+        sleep 10
389
+    done
386 390
     set -x
387 391
 
388
-    # Watch devstack's output
392
+    # Watch devstack's output (which doesn't start until stack.sh is running,
393
+    # but wait for run.sh (which starts stack.sh) to exit as that is what
394
+    # hopefully writes the succeded cookie.
389 395
     pid=`ssh_no_check -q stack@$OS_VM_MANAGEMENT_ADDRESS pgrep run.sh`
390 396
     ssh_no_check -q stack@$OS_VM_MANAGEMENT_ADDRESS "tail --pid $pid -n +1 -f /tmp/devstack/log/stack.log"
391 397