File indexing completed on 2026-04-25 08:29:08
0001
0002
0003 if [ "$#" -ne 1 ] && [ "$#" -ne 4 ] ; then
0004 echo "Unsupported call:"
0005 echo $0 $@
0006 echo Abort.
0007 exit 10
0008 fi
0009
0010 distfilename=${1}
0011 echo "Checking health of file ${distfilename}"
0012 if [ "$#" -eq 1 ] ; then
0013 echo "No md5 or size check requested, assume success"
0014 exit 0
0015 fi
0016
0017 md5=-1
0018 size=-1
0019 filesystem=""
0020 if [ "$#" -eq 4 ] ; then
0021 md5=${2}
0022 size=${3}
0023 filesystem=${4}
0024
0025 if [ "${filesystem}" != "lustre" ] ; then
0026 echo "Unsupported filesystem ${filesystem} (expect lustre). Abort."
0027 exit 10
0028 fi
0029 fi
0030
0031 if [ ! -f ${distfilename} ]; then
0032 echo "${distfilename} not found!"
0033 exit 11
0034 fi
0035
0036
0037 if [ "${size}" != "-1" ] ; then
0038 actual_size=`stat -c '%s' ${distfilename}`
0039 if [ "${actual_size}" == "${size}" ] ; then
0040 echo "Size check passed."
0041 else
0042 echo "Calculated size: ${actual_size}"
0043 echo "Expected size: ${size}"
0044 exit 1
0045 fi
0046 else
0047
0048 echo "No size check requested, assume success"
0049 break
0050 fi
0051
0052
0053 actual_md5=`/usr/bin/env md5sum ${distfilename} | cut -d ' ' -f 1`
0054
0055 if [ "${md5}" != "-1" ] ; then
0056 if [ "${actual_md5}" != "${md5}" ] ; then
0057 echo "Calculated md5: ${actual_md5}"
0058 echo "Expected md5 : ${md5}"
0059 echo "md5sum mismatch! Abort."
0060 exit 1
0061 fi
0062 echo "Md5sum check passed."
0063 else
0064 echo "No md5sum check requested, assume success"
0065 fi
0066
0067 exit 0