Author: glen                         Date: Mon Jan 16 22:45:40 2006 GMT
Module: SPECS                         Tag: HEAD
---- Log message:
- batch cvs updates (cvs admin should be happy now)

---- Files affected:
SPECS:
   builder (1.370 -> 1.371) 

---- Diffs:

================================================================
Index: SPECS/builder
diff -u SPECS/builder:1.370 SPECS/builder:1.371
--- SPECS/builder:1.370 Mon Jan 16 23:25:44 2006
+++ SPECS/builder       Mon Jan 16 23:45:34 2006
@@ -628,6 +628,49 @@
        fi
 }
 
+cvsup()
+{
+        update_shell_title "cvsup"
+        local OPTIONS="up "
+        if [ -n "$CVSROOT" ]; then
+                 OPTIONS="-d $CVSROOT $OPTIONS"
+        else
+                 if [ ! -s CVS/Root -a "$NOCVS" != "yes" ]; then
+                               echo "warning: No cvs access defined for 
SOURCES"
+                               NOCVS="yes"
+                 fi
+        fi
+        if [ -z "$CVSDATE" -a -z "$CVSTAG" ]; then
+                 OPTIONS="$OPTIONS -A"
+        else
+                 if [ -n "$CVSDATE" ]; then
+                               OPTIONS="$OPTIONS -D $CVSDATE"
+                 fi
+                 if [ -n "$CVSTAG" ]; then
+                               OPTIONS="$OPTIONS -r $CVSTAG"
+                 fi
+        fi
+
+        local result=1
+        local retries_counter=0
+        update_shell_title "cvsup: $# files"
+        while [ "$result" != "0" -a "$retries_counter" -le "$CVS_RETRIES" ]; do
+                 retries_counter=$(( $retries_counter + 1 ))
+                 output=$(LC_ALL=C cvs $OPTIONS "$@" 2>&1)
+                 result=$?
+                 [ -n "$output" ] && echo "$output"
+                 if (echo "$output" | grep -qE "(Cannot connect to|connect to 
.* failed|Connection reset by peer|Connection timed out|Unknown host)") && [ 
"$result" -ne "0" -a "$retries_counter" -le "$CVS_RETRIES" ]; then
+                               echo "Trying again [$*]... ($retries_counter)"
+                               update_shell_title "cvsup: retry 
#$retries_counter"
+                               sleep 2
+                               continue
+                 else
+                               break
+                 fi
+        done
+        update_shell_title "cvsup: done!"
+}
+
 get_files()
 {
        GET_FILES="$@"
@@ -641,27 +684,9 @@
        if [ $# -gt 0 ]; then
                cd "$SOURCE_DIR"
 
-               OPTIONS="up "
-               if [ -n "$CVSROOT" ]; then
-                       OPTIONS="-d $CVSROOT $OPTIONS"
-               else
-                       if [ ! -s CVS/Root -a "$NOCVS" != "yes" ]; then
-                               echo "warning: No cvs access defined for 
SOURCES"
-                               NOCVS="yes"
-                       fi
-               fi
-               if [ -z "$CVSDATE" -a -z "$CVSTAG" ]; then
-                       OPTIONS="$OPTIONS -A"
-               else
-                       if [ -n "$CVSDATE" ]; then
-                               OPTIONS="$OPTIONS -D $CVSDATE"
-                       fi
-                       if [ -n "$CVSTAG" ]; then
-                               OPTIONS="$OPTIONS -r $CVSTAG"
-                       fi
-               fi
                local nf=$(echo "$GET_FILES" | wc -w)
                local nc=0
+               local get_files_cvs=""
                for i in $GET_FILES; do
                        nc=$((nc + 1))
                        SHELL_TITLE_PREFIX="get_files[$nc/$nf]"
@@ -731,24 +756,8 @@
                                                FROM_DISTFILES=0
                                        fi
                                elif [ -z "$(src_md5 "$i")" -a "$NOCVS" != 
"yes" ]; then
-                                       # ( echo $i | grep -qvE 
'(ftp|http|https)://' ); -- if CVS should be used, but URLs preferred
-                                       result=1
-                                       retries_counter=0
-                                       while [ "$result" != "0" -a 
"$retries_counter" -le "$CVS_RETRIES" ]
-                                       do
-                                               retries_counter=$(( 
$retries_counter + 1 ))
-                                               update_shell_title "cvs up: $fp"
-                                               output=$(LC_ALL=C cvs $OPTIONS 
"$fp" 2>&1)
-                                               result=$?
-                                               [ -n "$output" ] && echo 
"$output"
-                                               if (echo "$output" | grep -qE 
"(Cannot connect to|connect to .* failed|Connection reset by peer|Connection 
timed out|Unknown host)") && [ "$result" -ne "0" -a "$retries_counter" -le 
"$CVS_RETRIES" ]; then
-                                                       echo "Trying again 
["$fp"]... ($retries_counter)"
-                                                       sleep 2
-                                                       continue
-                                               else
-                                                       break
-                                               fi
-                                       done
+                                  get_files_cvs="$get_files_cvs $fp"
+                                       continue
                                fi
 
                                if [ -z "$NOURLS" ] && [ ! -f "$fp" -o -n 
"$UPDATE" ] && [ "`echo $i | grep -E 'ftp://|http://|https://'`" ]; then
@@ -818,6 +827,11 @@
                                Exit_error err_no_source_in_repo $i
                        fi
                done
+               SHELL_TITLE_PREFIX=""
+
+               if [ "$get_files_cvs" ]; then
+                        cvsup $get_files_cvs
+               fi
 
                if [ "$CHMOD" = "yes" ]; then
                        CHMOD_FILES="`nourl $GET_FILES`"
@@ -825,8 +839,6 @@
                                chmod $CHMOD_MODE $CHMOD_FILES
                        fi
                fi
-               unset OPTIONS
-               SHELL_TITLE_PREFIX=""
        fi
 }
 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/SPECS/builder?r1=1.370&r2=1.371&f=u

_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to