From 4b075bd2e60eb4cebea5072fcbe32924b03bd4d6 Mon Sep 17 00:00:00 2001
From: Scott Baker <smbaker@gmail.com>
Date: Tue, 13 Aug 2013 18:05:32 -0700
Subject: [PATCH] let waiting for the event consume some of the 5 minute delay

---
 planetstack/openstack/observer.py | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/planetstack/openstack/observer.py b/planetstack/openstack/observer.py
index 037c1c5..0e8b47d 100644
--- a/planetstack/openstack/observer.py
+++ b/planetstack/openstack/observer.py
@@ -90,8 +90,15 @@ class OpenStackObserver:
                      traceback.print_exc()
 
                 logger.info('Waiting for event')
+                tBeforeWait = time.time()
                 self.wait_for_event(timeout=300)
-                time.sleep(300)
+
+                # Enforce 5 minutes between wakeups
+                tSleep = 300 - (time.time() - tBeforeWait)
+                if tSleep > 0:
+                    logger.info('Sleeping for %d seconds' % tSleep)
+                    time.sleep(300)
+
                 logger.info('Observer woken up')
             except:
                 logger.log_exc("Exception in observer run loop")
-- 
2.47.0