Since we're moving the queue entries into the queue directory for
authorEvan Broder <broder@mit.edu>
Thu, 31 Dec 2009 20:16:46 +0000 (15:16 -0500)
committerEvan Broder <broder@mit.edu>
Thu, 31 Dec 2009 20:16:46 +0000 (15:16 -0500)
atomicity, we need to inotify on both IN_CREATE and IN_MOVED_TO
events.

svn path=/trunk/packages/invirt-dev/; revision=2820

invirtibuilder

index 32744ae..ff82d4e 100755 (executable)
@@ -353,10 +353,10 @@ def build():
 
 class Invirtibuilder(pyinotify.ProcessEvent):
     """Process inotify triggers to build new packages."""
-    def process_IN_CREATE(self, event):
-        """Handle a created file or directory.
+    def process_default(self, event):
+        """Handle an inotify event.
 
-        When an IN_CREATE event comes in, trigger the builder.
+        When an inotify event comes in, trigger the builder.
         """
         build()
 
@@ -369,7 +369,8 @@ def main():
     invirtibuilder = Invirtibuilder()
     notifier = pyinotify.Notifier(watch_manager, invirtibuilder)
     watch_manager.add_watch(b._QUEUE_DIR,
-                            pyinotify.EventsCodes.ALL_FLAGS['IN_CREATE'])
+                            pyinotify.EventsCodes.ALL_FLAGS['IN_CREATE'] |
+                            pyinotify.EventsCodes.ALL_FLAGS['IN_MOVED_TO'])
 
     # Before inotifying, run any pending builds; otherwise we won't
     # get notified for them.