Index: trunk/ippTasks/chip.pro
===================================================================
--- trunk/ippTasks/chip.pro	(revision 21436)
+++ trunk/ippTasks/chip.pro	(revision 21463)
@@ -190,4 +190,50 @@
 
 # this variable will cycle through the known database names
+$chip_promote_DB = 0
+
+# promote exposures for which all imfiles have completed processing
+# sets the exposure state to full and queues warp processing if requested
+task	       chip.promoteexp
+  host         local
+
+  periods      -poll $LOADPOLL
+  periods      -exec $LOADEXEC
+  periods      -timeout 30
+  npending     1
+
+  stdout NULL
+  stderr $LOGDIR/chip.promoteexp.log
+
+  task.exec
+    $run = chiptool -promoteexp -limit 10
+    if ($DB:n == 0)
+      option DEFAULT
+    else
+      # save the DB name for the exit tasks
+      option $DB:$chip_promote_DB
+      $run = $run -dbname $DB:$chip_promote_DB
+      $chip_promote_DB ++
+      if ($chip_promote_DB >= $DB:n) set chip_promote_DB = 0
+    end
+    add_poll_args run
+    command $run
+  end
+
+  # success
+  task.exit    0
+  end
+
+  # locked list
+  task.exit    default
+    showcommand failure
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+  end
+end
+
+# this variable will cycle through the known database names
 $chip_cleanup_DB = 0
 
Index: trunk/ippTasks/fake.pro
===================================================================
--- trunk/ippTasks/fake.pro	(revision 21436)
+++ trunk/ippTasks/fake.pro	(revision 21463)
@@ -177,4 +177,48 @@
 end
 
+# promote exposures for which all imfiles have completed processing
+# sets the exposure state to full and queues warp processing if requested
+$fake_promote_DB = 0
+task	       fake.promoteexp
+  host         local
+
+  periods      -poll $LOADPOLL
+  periods      -exec $LOADEXEC
+  periods      -timeout 30
+  npending     1
+
+  stdout NULL
+  stderr $LOGDIR/fake.promoteexp.log
+
+  task.exec
+    $run = faketool -promoteexp -limit 10
+    if ($DB:n == 0)
+      option DEFAULT
+    else
+      # save the DB name for the exit tasks
+      option $DB:$fake_promote_DB
+      $run = $run -dbname $DB:$fake_promote_DB
+      $fake_promote_DB ++
+      if ($fake_promote_DB >= $DB:n) set fake_promote_DB = 0
+    end
+    add_poll_args run
+    command $run
+  end
+
+  # success
+  task.exit    0
+  end
+
+  # locked list
+  task.exit    default
+    showcommand failure
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+  end
+end
+
 # this variable will cycle through the known database names
 $fake_cleanup_DB = 0
