Explicitly prevent deletion processing in steps in which it doesn't make
authorSapan Bhatia <gwsapan@gmail.com>
Tue, 22 Jul 2014 05:27:02 +0000 (01:27 -0400)
committerSapan Bhatia <gwsapan@gmail.com>
Wed, 23 Jul 2014 20:25:15 +0000 (16:25 -0400)
sense.

planetstack/ec2_observer/event_loop.py
planetstack/ec2_observer/event_manager.pyc
planetstack/ec2_observer/steps/sync_deployments.py
planetstack/ec2_observer/steps/sync_images.py
planetstack/ec2_observer/steps/sync_nodes.py
planetstack/ec2_observer/steps/sync_site_deployments.py
planetstack/ec2_observer/steps/sync_sites.py
planetstack/ec2_observer/steps/sync_users.py

index d9855eb..e703869 100644 (file)
@@ -234,7 +234,7 @@ class PlanetStackObserver:
 
                                logger.info('Waiting for event')
                                tBeforeWait = time.time()
-                               self.wait_for_event(timeout=30)
+                               self.wait_for_event(timeout=5)
                                logger.info('Observer woke up')
 
                                # Two passes. One for sync, the other for deletion.
index 344d5e2..7737f37 100644 (file)
Binary files a/planetstack/ec2_observer/event_manager.pyc and b/planetstack/ec2_observer/event_manager.pyc differ
index 8a258f1..76eeb1f 100644 (file)
@@ -10,6 +10,9 @@ class SyncDeployments(SyncStep):
     provides=[Deployment]
 
     def fetch_pending(self,deletion):
+        if (deletion):
+            return []
+
         deployments = Deployment.objects.filter(Q(name="Amazon EC2"))
         if (not deployments):
             deployments = [Deployment(name="Amazon EC2")]
index 3a15b33..903b73b 100644 (file)
@@ -12,6 +12,9 @@ class SyncImages(SyncStep):
     requested_interval=3600
 
     def fetch_pending(self,deletion):
+        if (deletion):
+            return []
+
         images = Image.objects.all()
         image_names = [image.name for image in images]
        
index b66eb2e..9dc00f2 100644 (file)
@@ -16,6 +16,9 @@ class SyncNodes(SyncStep):
        requested_interval=0
 
        def fetch_pending(self, deletion):
+        if (deletion):
+            return []
+
                deployment = Deployment.objects.filter(Q(name="Amazon EC2"))[0]
                current_site_deployments = SiteDeployments.objects.filter(Q(deployment=deployment))
 
index 30fdf97..54df732 100644 (file)
@@ -12,6 +12,9 @@ class SyncSiteDeployments(SyncStep):
        provides=[SiteDeployments]
 
        def fetch_pending(self, deletion):
+        if (deletion):
+            return []
+
                zone_ret = aws_run('ec2 describe-availability-zones')
                zones = zone_ret['AvailabilityZones']
                available_sites = [zone['ZoneName'] for zone in zones]
index 7a5c0dc..c8d6490 100644 (file)
@@ -12,6 +12,8 @@ class SyncSites(SyncStep):
        requested_interval=3600
 
        def fetch_pending(self, deletion):
+        if (deletion):
+            return []
 
                deployment = Deployment.objects.filter(Q(name="Amazon EC2"))[0]
                current_site_deployments = SiteDeployments.objects.filter(Q(deployment=deployment))
index d742186..030e360 100644 (file)
@@ -16,6 +16,9 @@ class SyncUsers(SyncStep):
        requested_interval=0
 
        def fetch_pending(self, deletion):
+        if (deletion):
+            return []
+
                users = User.objects.filter(Q(enacted__lt=F('updated')) | Q(enacted=None))
                if (users):
                        key_sig = aws_run('ec2 describe-key-pairs')