Skip to content
Snippets Groups Projects
Commit efb98ac8 authored by mjmac's avatar mjmac
Browse files

* Add support for date-pinned co/update

r=adilger
parent b355f623
No related branches found
No related tags found
No related merge requests found
......@@ -19,8 +19,9 @@ fatal ()
usage ()
{
cat <<EOF
Usage: $progname <lustretag>
Usage: $progname <lustretag> <pindate>
where <lustretag> is a tag of the lustre-core module
and <pindate> is an optional quoted timestamp suitable for cvs -D
EOF
}
......@@ -36,13 +37,14 @@ fi
buildtag="HEAD"
lustretag="$1"
shift
pindate=$1
shift
if [ "$*" ] ; then
usage >&2
exit 1
fi
case "$lustretag" in
'')
warn "a lustretag is required."
......@@ -90,25 +92,33 @@ cvs_cmd ()
update=""
if [ "$tag" = "HEAD" ] ; then
cotag=""
uptag="-A"
cotag=""
uptag="-A"
elif [ "$tag" ] ; then
cotag="-r $tag"
uptag="-r $tag"
cotag="-r $tag"
uptag="-r $tag"
else
# silently skip if no tag was specified
return
fi
# create a cvs date format that will survive shell expansion
if [ -n "$pindate" ]; then
datecmd=$(date -u +%s -d "$pindate")
datecmd="-D @$datecmd"
else
# silently skip if no tag was specified
return
datecmd=""
fi
if [ -d "$dir" ] ; then
echo "$progname: Updating $dir to $tag"
( cd "$dir" && cvs up -dP $uptag )
echo "$progname: Updating $dir to $tag"
( cd "$dir" && cvs up $datecmd -dAP $uptag )
else
echo "$progname: Checking out $dir from $tag"
cvs co -P $cotag -d "$dir" "$module"
echo "$progname: Checking out $dir from $tag"
cvs co $datecmd -P $cotag -d "$dir" "$module"
fi
if [ $? != 0 ] ; then
error_modules="$dir $error_modules"
error_modules="$dir $error_modules"
fi
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment