modified error handling methods
[feisty_meow.git] / scripts / rev_control / checkin.sh
index 54b26e8a10b0003a025c2889e4234515b45b07e6..9bdbe5cf10534452b2aa38a6ae6a63a4b682bb81 100644 (file)
@@ -1,47 +1,28 @@
 #!/bin/bash
 
-# checks in all our commonly used folders.
-# note: fred specific.
-
-source "$SHELLDIR/rev_control/rev_control.sh"
-
-# selects the method for check-in based on where we are.
-function do_checkin()
-{
-  local directory="$1"; shift
-  if [ -d "CVS" ]; then
-    # this appears to be cvs.
-    pushd "$directory/.." &>/dev/null
-    cvs ci "$directory"
-    popd &>/dev/null
-  elif [ -d ".svn" ]; then
-    svn ci .
-  elif [ -d ".git" ]; then
-    git commit .
-    git push
-  else
-    echo unknown repository for $directory...
-  fi
-}
-
-function checkin_list {
-  local list=$*
-  for i in $list; do
-    for j in $i/feisty_meow $i/hoople $i/hoople2 $i/quartz $i/web $i/yeti $i/xsede/xsede_tests $i/xsede/code/cak0l/trunk ; do
-      if [ ! -d "$j" ]; then continue; fi
-
-      pushd $j &>/dev/null
-      echo "checking in '$j'..."
-      do_checkin $j
-      popd &>/dev/null
-    done
-  done
-}
-
-if [ "$OS" != "Windows_NT" ]; then
-  # first get individual folders.
-  checkin_list $HOME
-else
-  checkin_list c: c:/home d: d:/home e: e:/home f: f:/home g: g:/home h: h:/home i: i:/home 
+# checkin: checks in all the folders present in the REPOSITORY_LIST variable.
+
+source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh"
+source "$FEISTY_MEOW_SCRIPTS/rev_control/version_control.sh"
+
+##############
+
+echo "committing repositories at: $(date)"
+echo
+
+FULL_LIST=" $(dirname $FEISTY_MEOW_APEX) $HOME "
+if [ "$OS" == "Windows_NT" ]; then
+  FULL_LIST+=" c:/ d:/ e:/ "
 fi
 
+checkin_list $FULL_LIST
+exit_on_error "checking in list: $FULL_LIST"
+
+##############
+
+# regenerate the scripts after checking in, since this could mean a modified version
+# of feisty meow is present.
+regenerate
+
+##############
+