]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/bash | |
2 | ||
3 | ################################################## | |
4 | validateout=`dirname $0` | |
5 | validatetime=`date` | |
6 | validated="0"; | |
7 | error=0 | |
8 | if [ -z $validateout ] | |
9 | then | |
10 | validateout="." | |
11 | fi | |
12 | ||
13 | cd $validateout; | |
14 | validateworkdir=`pwd`; | |
15 | ||
16 | echo "*******************************************************" >> stdout | |
17 | echo "* Automatically generated validation script *" >> stdout | |
18 | ||
19 | echo "* Time: $validatetime " >> stdout | |
20 | echo "* Dir: $validateout" >> stdout | |
21 | echo "* Workdir: $validateworkdir" >> stdout | |
22 | echo "* ----------------------------------------------------*" >> stdout | |
23 | ls -la ./ >> stdout | |
24 | echo "* ----------------------------------------------------*" >> stdout | |
25 | ||
26 | ################################################## | |
27 | ||
28 | if [ ! -f stderr ] ; then | |
29 | error=1 | |
30 | echo "* ########## Job not validated - no stderr ###" >> stdout | |
31 | echo "Error = $error" >> stdout | |
32 | fi | |
33 | parArch=`grep -Ei "Cannot Build the PAR Archive" stderr` | |
34 | segViol=`grep -Ei "Segmentation violation" stderr` | |
35 | segFault=`grep -Ei "Segmentation fault" stderr` | |
36 | glibcErr=`grep -Ei "*** glibc detected ***" stderr` | |
37 | ||
38 | if [ "$parArch" != "" ] ; then | |
39 | error=1 | |
40 | echo "* ########## Job not validated - PAR archive not built ###" >> stdout | |
41 | echo "$parArch" >> stdout | |
42 | echo "Error = $error" >> stdout | |
43 | fi | |
44 | if [ "$segViol" != "" ] ; then | |
45 | error=1 | |
46 | echo "* ########## Job not validated - Segment. violation ###" >> stdout | |
47 | echo "$segViol" >> stdout | |
48 | echo "Error = $error" >> stdout | |
49 | fi | |
50 | if [ "$segFault" != "" ] ; then | |
51 | error=1 | |
52 | echo "* ########## Job not validated - Segment. fault ###" >> stdout | |
53 | echo "$segFault" >> stdout | |
54 | echo "Error = $error" >> stdout | |
55 | fi | |
56 | if [ "$glibcErr" != "" ] ; then | |
57 | error=1 | |
58 | echo "* ########## Job not validated - *** glibc detected *** ###" >> stdout | |
59 | echo "$glibcErr" >> stdout | |
60 | echo "Error = $error" >> stdout | |
61 | fi | |
62 | # Only check all desired files have been merged properly. | |
63 | # Skip the validation by the analysis manager after the Terminate | |
64 | # since all the output files have not been registered at the | |
65 | # previous stage (like EventStat_temp.root or pyxsec_hists.root) | |
66 | # and the manager will complain about... | |
67 | if ! [ -f outputs_valid_merge ] ; then | |
68 | error=1 | |
69 | echo "Output files were not validated by the analysis manager" >> stdout | |
70 | echo "Output files were not validated by the analysis manager" >> stderr | |
71 | fi | |
72 | if [ $error = 0 ] ; then | |
73 | echo "* ---------------- Job Validated ------------------*" >> stdout | |
74 | # echo "* === Logs std* will be deleted === " | |
75 | # rm -f std* | |
76 | fi | |
77 | echo "* ----------------------------------------------------*" | |
78 | echo "*******************************************************" | |
79 | cd - | |
80 | exit $error |