X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Frev_control%2Fgetem.sh;h=da9cb3913482df743d2d664f28de0d32a8c1e842;hb=d5eb622d41a49eb525e0df6639444945df9fd2ae;hp=8c5ace7828aa11821f96dbd5be4be6537321dac2;hpb=8a77c232cea62e0991cddef648bfbd409595b81a;p=feisty_meow.git diff --git a/scripts/rev_control/getem.sh b/scripts/rev_control/getem.sh index 8c5ace78..da9cb391 100644 --- a/scripts/rev_control/getem.sh +++ b/scripts/rev_control/getem.sh @@ -5,25 +5,29 @@ source "$FEISTY_MEOW_SCRIPTS/core/launch_feisty_meow.sh" source "$FEISTY_MEOW_SCRIPTS/rev_control/version_control.sh" -# trickery to ensure we can always update this file, even when the operating system has some -# rude behavior with regard to file locking (ahem, windows...). -# and even more rudeness is that the pwd and $TMP may not always be in the same form, -# which causes endless confusion and badness. that's why we get the pwd reading for TMP -# first so we can do an orange-to-orange compare. +############## + +# trickery to ensure we can always update feisty meow, including this specific +# file, even when the operating system has some rude behavior with regard to +# file locking (ahem, windoze). and even more rudeness is that the pwd and +# $TMP may not always be in the same form, which causes endless confusion and +# badness. that's why we get the pwd reading for TMP first so we can do an +# oranges-to-oranges compare. tmpdir="$(cd $TMP; \pwd)" if [ "$(\pwd)" != "$tmpdir" ]; then - if [ ! -z "$SHELL_DEBUG" ]; then + if [ ! -z "$DEBUG_FEISTY_MEOW" ]; then echo "moving to the TMP directory to avoid file access conflicts..." fi new_name="$TMP/zz_$(basename $0)" - cp -f "$0" "$new_name" - if [ $? -ne 0 ]; then - echo "failed to copy this script up to the TMP directory. exploit attempted?" - exit 1 - fi - cd "$TMP" + \cp -f "$0" "$new_name" + exit_on_error "failed to copy this script up to the TMP directory. exploit attempted?" + pushd "$TMP" &>/dev/null + exit_on_error "changing to TMP directory: $TMP" chmod a+x "$new_name" + exit_on_error "chmodding of file: $new_name" exec "$new_name" + exit_on_error "execing cloned getemscript" + popd &>/dev/null fi ############## @@ -31,18 +35,18 @@ fi export TMPO_CHK=$TMP/zz_chk.log rm -f "$TMPO_CHK" +exit_on_error "removing file: $TMPO_CHK" echo "getting repositories at: $(date)" +echo # perform the checkouts as appropriate per OS. FULL_LIST="$(dirname $FEISTY_MEOW_APEX) $HOME" -#if [ "$OS" != "Windows_NT" ]; then -# checkout_list $HOME /usr/local 2>&1 | tee -a "$TMPO_CHK" -#else if [ "$OS" == "Windows_NT" ]; then FULL_LIST+="c:/ d:/ e:/" fi checkout_list $FULL_LIST 2>&1 | tee -a "$TMPO_CHK" +exit_on_error "checking out list: $FULL_LIST" ##############