Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-25 08:29:08

0001 #!/usr/bin/env bash
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     # [ "${filesystem}" != "sphenix" ] && [ "${filesystem}" != "gpfs" ] && 
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 # Check size
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     # No size check requested, assume success
0048     echo "No size check requested, assume success"
0049     break
0050 fi
0051 
0052 # Check md5sum:
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