Index: trunk/ippTasks/Makefile.am
===================================================================
--- trunk/ippTasks/Makefile.am	(revision 16564)
+++ trunk/ippTasks/Makefile.am	(revision 16570)
@@ -18,5 +18,9 @@
 
 other_files = \
-	chiphosts.config \
+	chiphosts.manoa.config \
+	chiphosts.mhpcc.config \
+	site.manoa.pro \
+	site.mhpcc.pro \
+	simtest.auto \
 	simtest.det \
 	isp.det
Index: trunk/ippTasks/automate.pro
===================================================================
--- trunk/ippTasks/automate.pro	(revision 16564)
+++ trunk/ippTasks/automate.pro	(revision 16570)
@@ -26,15 +26,14 @@
   end
   queueload tmp -x "cat $MODULES:0/$1"
-  ipptool2book tmp automate -key name -uniq -setword pantaskState INIT
+  ipptool2book tmp automate -key name -uniq -setword pantaskState INIT.BLOCK
   queuedelete tmp
 end
 
-$automate_Ncheck = 0
-
-task automate.check
+$automate_Nblock = -1
+task automate.block
   host         local
 
   periods      -poll 1
-  periods      -exec 10
+  periods      -exec 5
   periods      -timeout 30
   active       true
@@ -42,36 +41,42 @@
 
   task.exec
-    local N Npage pageName
+    local Npage pageName
 
     # how many pages are waiting to be started?
-    book npages automate -var N -key pantaskState INIT
-    if ($N == 0) break
-
-    # total number of pages in book
-    book npages automate -var Npage
-
-    $automate_Ncheck ++
-    if ($automate_Ncheck >= $Npage) set automate_Ncheck = 0
-
-    # search the automate book for an entry which is unstarted (state INIT) 
-    book getpage automate $automate_Ncheck -var pageName -key pantaskState INIT
-    if ("$pageName" == "NULL") break 
+    book npages automate -var Npage -key pantaskState INIT.BLOCK
+    if ($Npage == 0) 
+      echo "no entries in INIT.BLOCK state"
+      break
+    end
+
+    # cycle over the number of INIT.BLOCK pages: no point to loop over the others
+    $automate_Nblock ++
+    if ($automate_Nblock >= $Npage) set automate_Nblock = 0
+    echo "automate.block $automate_Nblock"
+
+    # search the automate book for an entry which is unstarted (state INIT.BLOCK) 
+    book getpage automate $automate_Nblock -var pageName -key pantaskState INIT.BLOCK
+    if ("$pageName" == "NULL") 
+      echo "entry $automate_Nblock not in INIT.BLOCK state"
+      break 
+    end
  
-    book getword automate $pageName check -var checkCommand
-    if (("$checkCommand" == "NULL") || ("$checkCommand" == "NONE"))
-      # if there is no check needed, we can immediate progress to READY
-      book setword automate $pageName pantaskState READY
-      break
-    end
-
-    book setword automate $pageName pantaskState CHECK
+    book getword automate $pageName block -var blockCommand
+    if (("$blockCommand" == "NULL") || ("$blockCommand" == "NONE"))
+      # if there is no block needed, we can immediate progress to the next stage (INIT.CHECK)
+      book setword automate $pageName pantaskState INIT.CHECK
+      echo "$pageName is ready : INIT.CHECK"
+      break
+    end
+
+    book setword automate $pageName pantaskState RUN.BLOCK
 
     if ($VERBOSE >= 1)
-      echo "starting automate check for $pageName"
-      echo "command $checkCommand"
+      echo "starting automate block for $pageName"
+      echo "command $blockCommand"
     end
 
     options $pageName
-    command $checkCommand
+    command $blockCommand
   end
 
@@ -80,4 +85,6 @@
 
     $pageName = $options:0
+
+    echo "complete $pageName test, checking results"
 
     # convert 'stdout' to book format
@@ -88,22 +95,35 @@
     end
 
+    # if the block test returns any valid pages (valid results), the block is set, don't move to check
     book npages detExp -var Npage 
-    if ($Npage == 0) break
-
-    # we should have launched only a single detRun
-    book setword automate $pageName pantaskState READY
+    if ($Npage == 0) 
+      echo "$pageName is not blocked, ready for CHECK"
+      book setword automate $pageName pantaskState INIT.CHECK
+    else
+      echo "$pageName is blocked, not ready for CHECK"
+      book setword automate $pageName pantaskState INIT.BLOCK
+    end
 
     # drop the detExt book after we've grabbed the state
     book delete detExp
   end
-end
-
-$automate_Nlaunch = 0
-
-task automate.launch
+
+  # all failures here (what state?)
+  task.exit    default
+    showcommand failure
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+  end
+end
+
+$automate_Ncheck = -1
+task automate.check
   host         local
 
   periods      -poll 1
-  periods      -exec 10
+  periods      -exec 5
   periods      -timeout 30
   active       true
@@ -111,28 +131,123 @@
 
   task.exec
-    local N Npage pageName
+    local Npage pageName
 
     # how many pages are waiting to be started?
-    book npages automate -var N -key pantaskState READY
-    if ($N == 0) break
-
-    # total number of pages in book
-    book npages automate -var Npage
-
+    book npages automate -var Npage -key pantaskState INIT.CHECK
+    if ($Npage == 0) 
+      echo "no entries in INIT.CHECK state"
+      break
+    end
+
+    # cycle over the number of INIT.CHECK pages: no point to loop over the others
+    $automate_Ncheck ++
+    if ($automate_Ncheck >= $Npage) set automate_Ncheck = 0
+    echo "automate.check $automate_Ncheck"
+
+    # search the automate book for an entry which is unstarted (state INIT.CHECK) 
+    book getpage automate $automate_Ncheck -var pageName -key pantaskState INIT.CHECK
+    if ("$pageName" == "NULL") 
+      echo "entry $automate_Ncheck not in INIT.CHECK state"
+      break 
+    end
+ 
+    book getword automate $pageName check -var checkCommand
+    if (("$checkCommand" == "NULL") || ("$checkCommand" == "NONE"))
+      # if there is no check needed, we can immediate progress to the next stage (INIT.LAUNCH)
+      book setword automate $pageName pantaskState INIT.LAUNCH
+      echo "$pageName is ready : INIT.LAUNCH"
+      break
+    end
+
+    book setword automate $pageName pantaskState RUN.CHECK
+
+    if ($VERBOSE >= 1)
+      echo "starting automate check for $pageName"
+      echo "command $checkCommand"
+    end
+
+    options $pageName
+    command $checkCommand
+  end
+
+  task.exit $EXIT_SUCCESS
+    local pageName Npage
+
+    $pageName = $options:0
+
+    echo "complete $pageName test, checking results"
+
+    # convert 'stdout' to book format
+    # XXX to use other tests, we'll need to modify this 
+    ipptool2book stdout detExp -key det_id -uniq
+    if ($VERBOSE > 2)
+      book listbook detExp
+    end
+
+    book npages detExp -var Npage 
+    if ($Npage == 0) 
+      echo "$pageName not ready for LAUNCH"
+      book setword automate $pageName pantaskState INIT.CHECK
+    else
+      echo "$pageName is ready for LAUNCH"
+      book setword automate $pageName pantaskState INIT.LAUNCH
+    end
+
+    # drop the detExt book after we've grabbed the state
+    book delete detExp
+  end
+
+  # all failures here (what state?)
+  task.exit    default
+    showcommand failure
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+  end
+end
+
+$automate_Nlaunch = 0
+task automate.launch
+  host         local
+
+  periods      -poll 1
+  periods      -exec 5
+  periods      -timeout 30
+  active       true
+  npending     1
+
+  task.exec
+    local Npage pageName
+
+    # how many pages are waiting to be started?
+    book npages automate -var Npage -key pantaskState INIT.LAUNCH
+    if ($Npage == 0) 
+      echo "no entries in INIT.LAUNCH state"
+      break
+    end
+
+    # cycle over the number of INIT.LAUNCH pages: no point to loop over the others
     $automate_Nlaunch ++
     if ($automate_Nlaunch >= $Npage) set automate_Nlaunch = 0
-
-    # search the automate book for an entry which is ready (state READY) 
-    book getpage automate $automate_Nlaunch -var pageName -key pantaskState READY
-    if ("$pageName" == "NULL") break 
+    echo "automate.launch $automate_Nlaunch"
+
+    # search the automate book for an entry which is unstarted (state INIT.LAUNCH) 
+    book getpage automate $automate_Nlaunch -var pageName -key pantaskState INIT.LAUNCH
+    if ("$pageName" == "NULL") 
+      echo "entry $automate_Nlaunch not in INIT.LAUNCH state"
+      break 
+    end
  
     book getword automate $pageName launch -var launchCommand
     if (("$launchCommand" == "NULL") || ("$launchCommand" == "NONE"))
-      # if there is no launch needed, we can immediate progress to READY
-      book setword automate $pageName pantaskState DONE
-      break
-    end
-
-    book setword automate $pageName pantaskState LAUNCH
+      # if there is no launch needed, we can immediate progress to the next stage (INIT.LAUNCH)
+      book setword automate $pageName pantaskState INIT.LAUNCH
+      echo "$pageName is ready : INIT.LAUNCH"
+      break
+    end
+
+    book setword automate $pageName pantaskState RUN.LAUNCH
 
     if ($VERBOSE >= 1)
@@ -146,10 +261,21 @@
 
   task.exit $EXIT_SUCCESS
-    local pageName
+    local pageName Npage
 
     $pageName = $options:0
 
-    # we should have launched only a single detRun
-    book setword automate $pageName pantaskState DONE
-  end
-end
+    echo "completed $pageName launch"
+    book setword automate $pageName pantaskState DONE.LAUNCH
+  end
+
+  # all failures here (what state?)
+  task.exit    default
+    showcommand failure
+  end
+
+  # operation times out?
+  task.exit    timeout
+    showcommand timeout
+  end
+end
+
Index: trunk/ippTasks/chiphosts.config
===================================================================
--- trunk/ippTasks/chiphosts.config	(revision 16564)
+++ 	(revision )
@@ -1,170 +1,0 @@
-chiphosts MULTI
-
-chiphosts METADATA
-  camera STR MEGACAM
-  ccd00 STR po00
-  ccd01 STR po01
-  ccd02 STR po02
-  ccd03 STR po03
-  ccd04 STR po04
-  ccd05 STR po05
-  ccd06 STR po06
-  ccd07 STR po07
-  ccd08 STR po08
-  ccd09 STR po09
-END
-
-chiphosts METADATA
-  camera STR CFH12K
-  ccd00 STR po10
-  ccd01 STR po11
-  ccd02 STR po12
-END
-
-chiphosts METADATA
-  camera STR GPC1
-
-  XY01  STR  ipp005
-  XY02  STR  ipp005
-  XY03  STR  ipp005
-  XY04  STR  ipp005
-  XY05  STR  ipp005
-  XY06  STR  ipp005
-
-  XY10  STR  ipp006
-  XY11  STR  ipp006
-  XY12  STR  ipp006
-  XY13  STR  ipp006
-  XY14  STR  ipp006
-  XY15  STR  ipp006
-
-  XY16  STR  ipp007
-  XY17  STR  ipp007
-  XY20  STR  ipp007
-  XY21  STR  ipp007
-  XY22  STR  ipp007
-  XY23  STR  ipp007
-
-  XY24  STR  ipp008
-  XY25  STR  ipp008
-  XY26  STR  ipp008
-  XY27  STR  ipp008
-  XY30  STR  ipp008
-  XY31  STR  ipp008
-
-  XY32  STR  ipp009
-  XY33  STR  ipp009
-  XY34  STR  ipp009
-  XY35  STR  ipp009
-  XY36  STR  ipp009
-  XY37  STR  ipp009
-
-  XY40  STR  ipp010
-  XY41  STR  ipp010
-  XY42  STR  ipp010
-  XY43  STR  ipp010
-  XY44  STR  ipp010
-  XY45  STR  ipp010
-
-  XY46  STR  ipp011
-  XY47  STR  ipp011
-  XY50  STR  ipp011
-  XY51  STR  ipp011
-  XY52  STR  ipp011
-  XY53  STR  ipp011
-
-  XY54  STR  ipp016
-  XY55  STR  ipp016
-  XY56  STR  ipp016
-  XY57  STR  ipp016
-  XY60  STR  ipp016
-  XY61  STR  ipp016
-
-  XY62  STR  ipp020
-  XY63  STR  ipp020
-  XY64  STR  ipp020
-  XY65  STR  ipp020
-  XY66  STR  ipp020
-  XY67  STR  ipp020
-
-  XY71  STR  ipp021
-  XY72  STR  ipp021
-  XY73  STR  ipp021
-  XY74  STR  ipp021
-  XY75  STR  ipp021
-  XY76  STR  ipp021
-END
-
-chiphosts METADATA
-  camera STR gpc1
-
-  ota01  STR  ipp005
-  ota02  STR  ipp005
-  ota03  STR  ipp005
-  ota04  STR  ipp005
-  ota05  STR  ipp005
-  ota06  STR  ipp005
-
-  ota10  STR  ipp006
-  ota11  STR  ipp006
-  ota12  STR  ipp006
-  ota13  STR  ipp006
-  ota14  STR  ipp006
-  ota15  STR  ipp006
-
-  ota16  STR  ipp007
-  ota17  STR  ipp007
-  ota20  STR  ipp007
-  ota21  STR  ipp007
-  ota22  STR  ipp007
-  ota23  STR  ipp007
-
-  ota24  STR  ipp008
-  ota25  STR  ipp008
-  ota26  STR  ipp008
-  ota27  STR  ipp008
-  ota30  STR  ipp008
-  ota31  STR  ipp008
-
-  ota32  STR  ipp009
-  ota33  STR  ipp009
-  ota34  STR  ipp009
-  ota35  STR  ipp009
-  ota36  STR  ipp009
-  ota37  STR  ipp009
-
-  ota40  STR  ipp010
-  ota41  STR  ipp010
-  ota42  STR  ipp010
-  ota43  STR  ipp010
-  ota44  STR  ipp010
-  ota45  STR  ipp010
-
-  ota46  STR  ipp011
-  ota47  STR  ipp011
-  ota50  STR  ipp011
-  ota51  STR  ipp011
-  ota52  STR  ipp011
-  ota53  STR  ipp011
-
-  ota54  STR  ipp016
-  ota55  STR  ipp016
-  ota56  STR  ipp016
-  ota57  STR  ipp016
-  ota60  STR  ipp016
-  ota61  STR  ipp016
-
-  ota62  STR  ipp020
-  ota63  STR  ipp020
-  ota64  STR  ipp020
-  ota65  STR  ipp020
-  ota66  STR  ipp020
-  ota67  STR  ipp020
-
-  ota71  STR  ipp021
-  ota72  STR  ipp021
-  ota73  STR  ipp021
-  ota74  STR  ipp021
-  ota75  STR  ipp021
-  ota76  STR  ipp021
-END
Index: trunk/ippTasks/chiphosts.manoa.config
===================================================================
--- trunk/ippTasks/chiphosts.manoa.config	(revision 16570)
+++ trunk/ippTasks/chiphosts.manoa.config	(revision 16570)
@@ -0,0 +1,19 @@
+## basic chiphost table: use the defaults for everything
+
+chiphosts MULTI
+
+chiphosts METADATA
+  camera STR MEGACAM
+END
+
+chiphosts METADATA
+  camera STR CFH12K
+END
+
+chiphosts METADATA
+  camera STR GPC1
+END
+
+chiphosts METADATA
+  camera STR gpc1
+END
Index: trunk/ippTasks/chiphosts.mhpcc.config
===================================================================
--- trunk/ippTasks/chiphosts.mhpcc.config	(revision 16570)
+++ trunk/ippTasks/chiphosts.mhpcc.config	(revision 16570)
@@ -0,0 +1,170 @@
+chiphosts MULTI
+
+chiphosts METADATA
+  camera STR MEGACAM
+  ccd00 STR po00
+  ccd01 STR po01
+  ccd02 STR po02
+  ccd03 STR po03
+  ccd04 STR po04
+  ccd05 STR po05
+  ccd06 STR po06
+  ccd07 STR po07
+  ccd08 STR po08
+  ccd09 STR po09
+END
+
+chiphosts METADATA
+  camera STR CFH12K
+  ccd00 STR po10
+  ccd01 STR po11
+  ccd02 STR po12
+END
+
+chiphosts METADATA
+  camera STR GPC1
+
+  XY01  STR  ipp005
+  XY02  STR  ipp005
+  XY03  STR  ipp005
+  XY04  STR  ipp005
+  XY05  STR  ipp005
+  XY06  STR  ipp005
+
+  XY10  STR  ipp006
+  XY11  STR  ipp006
+  XY12  STR  ipp006
+  XY13  STR  ipp006
+  XY14  STR  ipp006
+  XY15  STR  ipp006
+
+  XY16  STR  ipp007
+  XY17  STR  ipp007
+  XY20  STR  ipp007
+  XY21  STR  ipp007
+  XY22  STR  ipp007
+  XY23  STR  ipp007
+
+  XY24  STR  ipp008
+  XY25  STR  ipp008
+  XY26  STR  ipp008
+  XY27  STR  ipp008
+  XY30  STR  ipp008
+  XY31  STR  ipp008
+
+  XY32  STR  ipp009
+  XY33  STR  ipp009
+  XY34  STR  ipp009
+  XY35  STR  ipp009
+  XY36  STR  ipp009
+  XY37  STR  ipp009
+
+  XY40  STR  ipp010
+  XY41  STR  ipp010
+  XY42  STR  ipp010
+  XY43  STR  ipp010
+  XY44  STR  ipp010
+  XY45  STR  ipp010
+
+  XY46  STR  ipp011
+  XY47  STR  ipp011
+  XY50  STR  ipp011
+  XY51  STR  ipp011
+  XY52  STR  ipp011
+  XY53  STR  ipp011
+
+  XY54  STR  ipp016
+  XY55  STR  ipp016
+  XY56  STR  ipp016
+  XY57  STR  ipp016
+  XY60  STR  ipp016
+  XY61  STR  ipp016
+
+  XY62  STR  ipp020
+  XY63  STR  ipp020
+  XY64  STR  ipp020
+  XY65  STR  ipp020
+  XY66  STR  ipp020
+  XY67  STR  ipp020
+
+  XY71  STR  ipp021
+  XY72  STR  ipp021
+  XY73  STR  ipp021
+  XY74  STR  ipp021
+  XY75  STR  ipp021
+  XY76  STR  ipp021
+END
+
+chiphosts METADATA
+  camera STR gpc1
+
+  ota01  STR  ipp005
+  ota02  STR  ipp005
+  ota03  STR  ipp005
+  ota04  STR  ipp005
+  ota05  STR  ipp005
+  ota06  STR  ipp005
+
+  ota10  STR  ipp006
+  ota11  STR  ipp006
+  ota12  STR  ipp006
+  ota13  STR  ipp006
+  ota14  STR  ipp006
+  ota15  STR  ipp006
+
+  ota16  STR  ipp007
+  ota17  STR  ipp007
+  ota20  STR  ipp007
+  ota21  STR  ipp007
+  ota22  STR  ipp007
+  ota23  STR  ipp007
+
+  ota24  STR  ipp008
+  ota25  STR  ipp008
+  ota26  STR  ipp008
+  ota27  STR  ipp008
+  ota30  STR  ipp008
+  ota31  STR  ipp008
+
+  ota32  STR  ipp009
+  ota33  STR  ipp009
+  ota34  STR  ipp009
+  ota35  STR  ipp009
+  ota36  STR  ipp009
+  ota37  STR  ipp009
+
+  ota40  STR  ipp010
+  ota41  STR  ipp010
+  ota42  STR  ipp010
+  ota43  STR  ipp010
+  ota44  STR  ipp010
+  ota45  STR  ipp010
+
+  ota46  STR  ipp011
+  ota47  STR  ipp011
+  ota50  STR  ipp011
+  ota51  STR  ipp011
+  ota52  STR  ipp011
+  ota53  STR  ipp011
+
+  ota54  STR  ipp016
+  ota55  STR  ipp016
+  ota56  STR  ipp016
+  ota57  STR  ipp016
+  ota60  STR  ipp016
+  ota61  STR  ipp016
+
+  ota62  STR  ipp020
+  ota63  STR  ipp020
+  ota64  STR  ipp020
+  ota65  STR  ipp020
+  ota66  STR  ipp020
+  ota67  STR  ipp020
+
+  ota71  STR  ipp021
+  ota72  STR  ipp021
+  ota73  STR  ipp021
+  ota74  STR  ipp021
+  ota75  STR  ipp021
+  ota76  STR  ipp021
+END
Index: trunk/ippTasks/pantasks.pro
===================================================================
--- trunk/ippTasks/pantasks.pro	(revision 16564)
+++ trunk/ippTasks/pantasks.pro	(revision 16570)
@@ -66,45 +66,4 @@
 end
 
-macro init.cluster.po
-  $PARALLEL = 1
-  controller exit true
-
-  # po05 -- using for pantasks 
-  # po23 -- broken perl
-
-  controller host add po02
-  controller host add po03
-  controller host add po04
-# controller host add po05
-  controller host add po06
-  controller host add po07
-# controller host add po08
-# controller host add po09
-# controller host add po10
-# controller host add po11
-# controller host add po12
-# controller host add po13
-# controller host add po14
-# controller host add po15
-# controller host add po16
-# controller host add po17
-# controller host add po18
-# controller host add po19
-# controller host add po20
-# controller host add po21
-# controller host add po22
-# controller host add po23
-# controller host add po24
-end
-
-macro init.cluster.sn
-  $PARALLEL = 1
-  controller exit true
-  controller host add sn2
-  controller host add sn3
-  controller host add sn4
-  controller host add sn5
-end
-
 macro init.isp
   list DB -add isp
@@ -113,50 +72,4 @@
 macro init.essence
   list DB -add essence_v2
-end
-
-macro init.cluster.mhpcc
-  $PARALLEL = 1
-  controller exit true
-  controller host add ipp005
-  controller host add ipp006
-  controller host add ipp007
-  controller host add ipp008
-  controller host add ipp009
-  controller host add ipp010
-  controller host add ipp011
-  controller host add ipp016
-  controller host add ipp020
-  controller host add ipp021
-end
-
-macro init.copy.mhpcc
- if ($0 != 2)
-   echo "USAGE: init.copy.mhpcc (nebulous)"
-   echo "nebulous may be 'on' or 'off'"
-   break
- end
-
- if (("$1" != "on") && ("$1" != "off")) 
-   echo "USAGE: init.copy.mhpcc (nebulous)"
-   echo "nebulous may be 'on' or 'off'"
-   break
- end
- 
- # the templates are used if we have a class_id/host relationship; 
- # if none is found, the default values are used
- # XXX not sure how to handle the .N value if we need to use more than one
- # XXX this stuff should all be placed in a 'site' config file
-
- $COMPRESS = 1
-
- if ("$1" == "on")
-  $NEBULOUS = 1
-  $default_host     = ipp004
-  $workdir_template = neb://@HOST@.0
- else
-  $NEBULOUS = 0
-  $default_host     = ipp004
-  $workdir_template = /data/@HOST@.0
- end
 end
 
@@ -467,9 +380,4 @@
 end
 
-macro load.chiphost.table
-  queueload tmp -x "cat $MODULES:0/chiphosts.config"
-  ipptool2book tmp chiphosts -key camera
-end
-
 macro check.globals
   if ($?NETWORK == 0)
Index: trunk/ippTasks/simtest.auto
===================================================================
--- trunk/ippTasks/simtest.auto	(revision 16564)
+++ trunk/ippTasks/simtest.auto	(revision 16570)
@@ -4,4 +4,5 @@
 automate METADATA
   name       STR BIAS
+  block      STR "dettool -runs -det_type BIAS -dbname eamtest"
   check      STR NONE
   launch     STR "dettool -definebyquery -workdir path://EAMWORK -inst SIMTEST -det_type BIAS -select_exp_type BIAS -dbname eamtest"
@@ -10,10 +11,12 @@
 automate METADATA
   name       STR DARK
+  block      STR "dettool -runs -det_type DARK -dbname eamtest"
   check      STR "detselect -search -inst SIMTEST -det_type BIAS -dbname eamtest"
   launch     STR "dettool -definebyquery -workdir path://EAMWORK -inst SIMTEST -det_type DARK -select_exp_type DARK -dbname eamtest"
 END
-
+ 
 automate METADATA
   name       STR SHUTTER
+  block      STR "dettool -runs -det_type SHUTTER -dbname eamtest"
   check      STR "detselect -search -inst SIMTEST -det_type DARK -dbname eamtest"
   launch     STR "dettool -definebyquery -workdir path://EAMWORK -inst SIMTEST -det_type SHUTTER -filter r -select_exp_type FLAT -select_filter r -dbname eamtest"
@@ -22,4 +25,5 @@
 automate METADATA
   name       STR FLAT-r
+  block      STR "dettool -runs -det_type FLAT -filter r -dbname eamtest"
   check      STR "detselect -search -inst SIMTEST -det_type SHUTTER -dbname eamtest"
   launch     STR "dettool -definebyquery -workdir path://EAMWORK -inst SIMTEST -det_type FLAT -filter r -select_exp_type FLAT -select_filter r -dbname eamtest"
@@ -28,4 +32,5 @@
 automate METADATA
   name       STR FLAT-i
+  block      STR "dettool -runs -det_type FLAT -filter i -dbname eamtest"
   check      STR "detselect -search -inst SIMTEST -det_type SHUTTER -dbname eamtest"
   launch     STR "dettool -definebyquery -workdir path://EAMWORK -inst SIMTEST -det_type FLAT -filter i -select_exp_type FLAT -select_filter i -dbname eamtest"
@@ -34,4 +39,5 @@
 automate METADATA
   name       STR OBJECT-r
+  block      STR "chiptool -block -label object.r -dbname eamtest"
   check      STR "detselect -search -inst SIMTEST -det_type FLAT -dbname eamtest -filter r"
   launch     STR "chiptool -unblock -label object.r -dbname eamtest"
@@ -40,4 +46,5 @@
 automate METADATA
   name       STR OBJECT-i
+  block      STR "chiptool -block -label object.i -dbname eamtest"
   check      STR "detselect -search -inst SIMTEST -det_type FLAT -dbname eamtest -filter i"
   launch     STR "chiptool -unblock -label object.i -dbname eamtest"
Index: trunk/ippTasks/site.manoa.pro
===================================================================
--- trunk/ippTasks/site.manoa.pro	(revision 16570)
+++ trunk/ippTasks/site.manoa.pro	(revision 16570)
@@ -0,0 +1,52 @@
+## site.mhpcc.pro : example configuration script for the MHPCC IPP cluster : -*- sh -*-
+
+## a site configuration needs to define the following pieces of information:
+## 1) the machines used for processing
+## 2) the default_host and workdir_template variables
+## 3) the chiphost table
+
+macro init.cluster.po
+  $PARALLEL = 1
+  controller exit true
+
+  # po05 -- using for pantasks 
+  # po23 -- broken perl
+
+  controller host add po02
+  controller host add po03
+  controller host add po04
+# controller host add po05
+  controller host add po06
+  controller host add po07
+# controller host add po08
+# controller host add po09
+# controller host add po10
+# controller host add po11
+# controller host add po12
+# controller host add po13
+# controller host add po14
+# controller host add po15
+# controller host add po16
+# controller host add po17
+# controller host add po18
+# controller host add po19
+# controller host add po20
+# controller host add po21
+# controller host add po22
+# controller host add po23
+# controller host add po24
+end
+
+macro init.cluster.sn
+  $PARALLEL = 1
+  controller exit true
+  controller host add sn2
+  controller host add sn3
+  controller host add sn4
+  controller host add sn5
+end
+
+macro init.site
+  queueload tmp -x "cat $MODULES:0/chiphosts.manoa.config"
+  ipptool2book tmp chiphosts -key camera
+end
Index: trunk/ippTasks/site.mhpcc.pro
===================================================================
--- trunk/ippTasks/site.mhpcc.pro	(revision 16570)
+++ trunk/ippTasks/site.mhpcc.pro	(revision 16570)
@@ -0,0 +1,61 @@
+## site.mhpcc.pro : example configuration script for the MHPCC IPP cluster : -*- sh -*-
+
+## a site configuration needs to define the following pieces of information:
+## 1) the machines used for processing
+## 2) the default_host and workdir_template variables
+## 3) the chiphost table
+
+macro init.cluster.mhpcc
+  $PARALLEL = 1
+  controller exit true
+  controller host add ipp005
+  controller host add ipp006
+  controller host add ipp007
+  controller host add ipp008
+  controller host add ipp009
+  controller host add ipp010
+  controller host add ipp011
+  controller host add ipp016
+  controller host add ipp020
+  controller host add ipp021
+end
+
+## override the basic inits set in pantasks.pro
+macro init.copy.mhpcc
+ if ($0 != 2)
+   echo "USAGE: init.copy.mhpcc (nebulous)"
+   echo "nebulous may be 'on' or 'off'"
+   break
+ end
+
+ if (("$1" != "on") && ("$1" != "off")) 
+   echo "USAGE: init.copy.mhpcc (nebulous)"
+   echo "nebulous may be 'on' or 'off'"
+   break
+ end
+ 
+ # XXX this is only used by summit.copy.pro.  move this as a check into summit.copy.pro?
+ $COMPRESS = 1
+
+ # the templates are used if we have a class_id/host relationship; 
+ # if none is found, the default values are used
+ # XXX not sure how to handle the .N value if we need to use more than one
+
+ if ("$1" == "on")
+  $NEBULOUS = 1
+  $default_host     = ipp004
+  $workdir_template = neb://@HOST@.0
+ else
+  $NEBULOUS = 0
+  $default_host     = ipp004
+  $workdir_template = /data/@HOST@.0
+ end
+end
+
+macro init.site
+  init.cluster.mhpcc
+  init.copy.mhpcc
+
+  queueload tmp -x "cat $MODULES:0/chiphosts.mhpcc.config"
+  ipptool2book tmp chiphosts -key camera
+end
