From 3d5b6e91ca167be7664c7eee7b17bba18cf8da45 Mon Sep 17 00:00:00 2001 From: jacob Date: Thu, 14 Jul 2005 17:02:25 +0000 Subject: [PATCH] - skip modules lacking a tag - print a summary of failed updates/checkouts at the end - also return an error status in this case --- lustrecvs | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/lustrecvs b/lustrecvs index 4436462..fa21806 100755 --- a/lustrecvs +++ b/lustrecvs @@ -63,6 +63,7 @@ case "$lustretag" in esac +error_modules= cvs_cmd () { dir="$1" @@ -74,9 +75,12 @@ cvs_cmd () if [ "$tag" = "HEAD" ] ; then cotag="" uptag="-A" - else + elif [ "$tag" ] ; then cotag="-r $tag" uptag="-r $tag" + else + # silently skip if no tag was specified + return fi if [ -d "$dir" ] ; then @@ -86,12 +90,19 @@ cvs_cmd () echo "$progname: Checking out $dir from $tag" cvs co -P $cotag -d "$dir" "$module" fi + if [ $? != 0 ] ; then + error_modules="$dir $error_modules" + fi } -cvs_cmd build lustre-build "$buildtag" +cvs_cmd build lustre-build "" "$buildtag" if [ -f build/buildcvs ] ; then . build/buildcvs else fatal 1 "build/buildcvs does not exist; not updating other modules." fi + +if [ "$error_modules" ] ; then + fatal 1 "There were errors checking out the following directories: $error_modules" +fi -- 1.8.3.1