Commit a632d08f authored by Jeremy Thomerson's avatar Jeremy Thomerson Committed by Natanael Copa

delete remote source files that fail the md5 checksum test

Currently, if the build server downloads a file that fails the md5sum check
for some reason (perhaps interrupted download, etc), the file is never deleted
so the build can not succeed until someone manually deletes the bad file.  This
change deletes any file that is a remote source file / package that fails the
md5sum check.  The subsequent rebuild will then be forced to download the file
again.
parent 9ee1b361
...@@ -155,7 +155,7 @@ sanitycheck() { ...@@ -155,7 +155,7 @@ sanitycheck() {
} }
md5check() { md5check() {
local dummy f local dummy f endreturnval originalparams origin file
if [ -z "$source" ]; then if [ -z "$source" ]; then
return 0 return 0
fi fi
...@@ -167,7 +167,26 @@ md5check() { ...@@ -167,7 +167,26 @@ md5check() {
fi fi
fetch || return 1 fetch || return 1
msg "Checking md5sums..." msg "Checking md5sums..."
cd "$srcdir" && echo "$md5sums" | md5sum -c IFS=$'\n'
endreturnval=0
originalparams=$@
set -- $source
for src in $md5sums; do
origin=$1; shift
echo "$src" | md5sum -c
if [ $? -ne 0 ]; then
is_remote $origin || continue
echo "Because the remote file above failed the md5sum check it will be deleted."
echo "Rebuilding will cause it to re-download which in some cases may fix the problem."
file=`echo "$src" | sed 's/.*[ \t\n]\(.*\)/\1/'`
echo "Deleting: $file"
rm $file
endreturnval=1
fi
done
unset IFS
set -- $originalparams
return $endreturnval
} }
# verify upstream sources # verify upstream sources
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment