1 jim.wunderlich 1.1 #!/bin/bash
2
3 #### bash shell
4
5 ##############################################################################
6 ##############################################################################
7 ##
8 ## pegasus nightly run script
9 ##
10 ## This script presumes that CVS, Complier and GNU make are all installed
11 ## and pathed.
12 ##
13 ## It will checkout the tree, build it, and run test.
14 ##
15 ## There is a status output file that is output to during the running of
16 ## the script (running_status_file) and the results are summarized in the
17 ## mail file (mail_file) that will be mailed to the selected destination.
18 ##
19 ## The nightly directory will contain the following after the script has
20 ## been run.
21 ##
22 jim.wunderlich 1.1 ## all_out pegasus runtime
23 ## cvs_co_out poststarttests_out standardtests_out
24 ## mail_file perftests_out
25 ## patch_out running_status_file tests_out
26 ##
27 ## There are sevearl execution steps within the script that can be
28 ## configured to TO_RUN or NOT_TO_RUN. Each step outputs to a file based on
29 ## its name by appending "_out"
30 ##
31 ## The steps are:
32 ##
33 ## STEP NAME OUTPUT FILE DESCRIPTION
34 ## ---------- ---------------------- ------------
35 ## cvs_co cvs_co_out file checkout
36 ## all all_out build source tree
37 ## tests test_out runs the unit tests
38 ## perftests perftests_out runs perftest
39 ## poststarttests poststarttests_out runs server tests
40 ## standardtests standardtests_out runs more server tests
41 ##
42 #############################################################################
43 jim.wunderlich 1.1 #############################################################################
44 ##
45 ## Set up the configuration for the nightly build
46 ##
47 ## There are three configuration areas.
48 ## 1. The variables that may be changed between runs to test different things
49 ## 2. Tha variables to be changed to set this script up for a particular system
50 ## 3. The variables to be changed to contrl the PEGASUS build evironment
51 ##
52
53 #############################################################################
54 #############################################################################
55 ## CONFIG area 1 - Variables to control the run charecteristics
56 ##
57 ##
58 ## The starting status of each step is set to TO_RUN. This string is
59 ## also used to initialize the respective output file
60 ## for that step.
61 ##
62 ## If the step status is set to the special string "NOT_TO_RUN" then
63 ## that step will be skipped.
64 jim.wunderlich 1.1 ##
65
66 cvs_co_status=TO_RUN
67 patch_status=TO_RUN
68 all_status=TO_RUN
69 tests_status=TO_RUN
70 perftests_status=TO_RUN
71 poststarttests_status=TO_RUN
72 standardtests_status=TO_RUN
73
74
75 status=NOT_DONE
76
77 ##
78 ## The RUN_NUM string is appended to theoutput files name and can be used to
79 ## prevent overwriting output files from previous runs.
80 ##
81 RUN_NUM="" # string appended to the output files
82 ###RUN_NUM="2"
83
84 ##############################################################################
85 jim.wunderlich 1.1 ##############################################################################
86 ## CONFIG area 2 - Variables to setup this script to run on a particular system
87 ##
88
89 ##
90 ## export the CVS repository info
91 ##
92 ## for user anon the password is anon you will have to do a cvs login
93 ## one time on your machine. After that CVS will remember the password
94 ##
95 ## CVS_USER_PASSWD=anon
96 ##
97 CVS_USER=anon
98
99 export CVSROOT=:pserver:${CVS_USER}@cvs.opengroup.org:/cvs/MSB
100
101 MOD_NAME="pegasus" # module to checkout to name pegasus
102
103
104 ##
105 ## Set up the diretory names and export the PEGASUS env variables
106 jim.wunderlich 1.1 ##
107 PEG_LOC_ROOT=~wunder/peg ## directory where the nightly directory is
108
109 dirName=TOGnightly ## nightly directory name
110 ##dirName=INnightly ## nightly directory name
111
112 cd $PEG_LOC_ROOT
113
114 BASE_DIR=$PEG_LOC_ROOT/$dirName
115
116 OS_NAME_VER="SUSE 9.2 Pro" # set the OS name for the report
117 ## OS_NAME_VER="SunOS 5.8"
118 CPU_TYPE="Intel Pentium III" # set the CPU type for the report
119 CPU_FREQ="800 Mhz" # set the CPU freq for the report
120 CPU_CNT="1" # set the number of CPU's for the report
121
122 export PEGASUS_PLATFORM=LINUX_IX86_GNU
123 ## export PEGSUS_PLATFORM=SOLARIS_SPARC_GNU
124
125 export PEGASUS_ROOT=$BASE_DIR/pegasus
126 export PEGASUS_HOME=$BASE_DIR/runtime
127 jim.wunderlich 1.1
128 export PATH=$PATH:$PEGASUS_HOME/bin ## set path to include the pegaus bin dir
129
130
131 PATCH_FILE=$BASE_DIR/../SW_changes_TOG ## set the Patch File location
132 PATCH_ERRORS=$BASE_DIR/patching_errors_TOG ## set the patch errors file location
133
134 MAIL_TO="pegasus-build-status@opengroup.org"
135
136 ###############################################################################
137 ###############################################################################
138 ## CONFIG area 3 - Variables to control the pegasus build charecteristics
139 ##
140
141
142 ######################################################
143 ## PEGASUS_HAS_SSL specifies SSL is to be compiled on
144 ## OPENSSL_BIN specifies the location of the OpenSSL binary.
145 ## OPENSSL_HOME Specifies the location of the OpenSSL SDK directory.
146 ## This directory must contain the OpenSSL include and library directory.
147 ##
148 jim.wunderlich 1.1 ## export PEGASUS_HAS_SSL=true
149 ## export OPENSSL_BIN=TBD_PATH
150 ## export OPENSSL_HOME=TBD_PATH
151 ## PEGASUS_ENABLE_SSLV2=true
152 ##
153 ## export PEGASUS_HAS_SSL=true
154 ## export OPENSSL_HOME=/usr ## needed on SUSE Linux
155
156 ######################################################
157 ## Controls how repository is built.
158 ##
159 ## PEGASUS_REPOSITORY_MODE= XML or BIN
160 ## PEGASUS_ENABLE_COMPRESSED_REPOSITORY Enables compressed repository
161 ## PEGASUS_ENABLE_COMPRESSED_REPOSITORY=true
162 ##
163
164 ######################################################
165 ## Controls Service Locator Protocol
166 ##
167 ## PEGASUS_ENABLE_SLP Enables Service Locator Protocol.
168 ## SLP is used in discovery of CIMOMs location.
169 jim.wunderlich 1.1 ##
170 ## PEGASUS_ENABLE_SLP=true
171 ##
172
173 ######################################################
174 ## Controls Debugging Capabilities
175 ##
176 ## PEGASUS_NOASSERTS Remove asserts
177 ## PEGASUS_DEBUG enables build with symble tables
178 ## PEGASUS_DISABLE_DEPRECATED_INTERFACES Removes deprecated symbol definitions
179 ## PEGASUS_EXTRA_C_FLAGS Extra C compiler flags,
180 ## PEGASUS_EXTRA_CXX_FLAGS Extra C++ compiler flags
181 ## PEGASUS_EXTRA_LINK_FLAGS Extra link flag,
182 ## PEGASUS_TEST_VERBOSE Sets verbose mode for most of the tests
183 ##
184 ## export PEGASUS_DEBUG=true
185 ## export PEGASUS_NOASSERTS=true
186 ## export PEGASUS_DISABLE_DEPRECATED_INTERFACES=true
187 ## export PEGASUS_TEST_VERBOSE=true
188 ##
189 export PEGASUS_DEBUG=true
190 jim.wunderlich 1.1
191 ######################################################
192 ## Internationalization support
193 ##
194 ## PEGASUS_HAS_MESSAGES Enable localization support,
195 ## ICU_INSTALL Directory with ICU libraries
196 ## ICU_ROOT Directory with ICU source code,
197 ##
198 ## export PEGASUS_HAS_MESSAGES=true
199 ##
200
201 #####################################################
202 ## CQL language support
203 ##
204 ## PEGASUS_DISABLE_CQL Disables CQL language support
205 ##
206 ## export PEGASUS_DISABLE_CQL=true
207 ##
208
209 ##############################################################################
210 ##############################################################################
211 jim.wunderlich 1.1 ##############################################################################
212 ##############################################################################
213 #####
214 ##### DO NOT MAKE EDITS BELOW THIS POINT
215 #####
216 ##### The rest of the file should not need to be edited.
217 #####
218 ##### All the speciic configuration parameters should be above this
219 ##### demarcation point. Everthing below uses the configuration data
220 ##### and runs the requested tests outputing the results to the output files
221 ##### and the "running_status_file" and the summary "mail_file"
222 #####
223 ##############################################################################
224 ##############################################################################
225 ##############################################################################
226 ##############################################################################
227
228
229
230 ##############################################################################
231 ##############################################################################
232 jim.wunderlich 1.1 ##
233 ## Function defintions
234 ##
235
236 ##################
237 # function to put output to the $status_file
238 #
239 function STATUS_OUT()
240 {
241 echo "$1" ;
242 echo "$1" >> $status_file ;
243 return 0 ;
244 }
245
246 ##################
247 # function to put output to the $MAIL_FILE
248 #
249 function MAIL_OUT()
250 {
251 echo "$1" >> $MAIL_FILE ;
252 return 0 ;
253 jim.wunderlich 1.1 }
254
255 ##################
256 # Function to initialise the step file name and to initialze the file
257 #
258 # Creates the output file and the assigns its name to a variable
259 #
260 # eg: for the step called tests the following will be created
261 # $tests_out_file set to $BASE_DIR/tests_out$RUN_NUM
262 # and the initial step status will be output to the file
263 #
264 # create the output file names
265 # tests_out_file=$BASE_DIR/tests_out$RUN_NUM
266 # create the output files
267 # echo "$tests_status" > $tests_out_file
268 #
269 function INIT_STEP_FILE()
270 {
271 CMD=$1
272 out_file=${CMD}_out_file
273 name=${CMD}_out
274 jim.wunderlich 1.1 step_status=${CMD}_status
275 step_start_time=${CMD}_start_time
276 step_stop_time=${CMD}_stop_time
277
278 export $step_start_time=NA
279 export $step_stop_time=NA
280
281 #create the output file name
282 export $out_file=$BASE_DIR/$name$RUN_NUM
283
284 #create the output file
285 echo ${!step_status} > ${!out_file}
286 }
287
288
289 ##################
290 # function to execute the step for a Makefile step
291 #
292 function EXEC_MAKE_STEP()
293 {
294 CMD=$1
295 jim.wunderlich 1.1 out_file=${CMD}_out_file
296 step_status=${CMD}_status
297 step_start_time=${CMD}_start_time
298 step_stop_time=${CMD}_stop_time
299
300 if [ "${!step_status}" != "NOT_TO_RUN" ] ; then
301
302 STATUS_OUT "make -s $CMD started at `$TIME_CMD` "
303
304 export $step_start_time=`$TIME_CMD`
305
306 if make -s $CMD 1>${!out_file} 2>&1
307 then
308 export $step_status="SUCCESS"
309 else
310 export $step_status="FAILURE"
311 fi
312
313 export $step_stop_time=`$TIME_CMD`
314
315 fi
316 jim.wunderlich 1.1
317 STATUS_OUT "make $CMD ${!step_status} at `$TIME_CMD` "
318
319 }
320
321 ##################
322 # function to execute the step for a TestMakefile step
323 #
324 function EXEC_TESTMAKE_STEP()
325 {
326 CMD=$1
327 out_file=${CMD}_out_file
328 step_status=${CMD}_status
329 step_start_time=${CMD}_start_time
330 step_stop_time=${CMD}_stop_time
331
332
333 if [ "${!step_status}" != "NOT_TO_RUN" ] ; then
334 STATUS_OUT "make $CMD started at `$TIME_CMD` "
335
336 export $step_start_time=`$TIME_CMD`
337 jim.wunderlich 1.1
338 if time make -f TestMakefile -s $CMD 1>>${!out_file} 2>&1
339 then
340 export $step_status="SUCCESS"
341 else
342 export $step_status="FAILURE"
343 fi
344
345 export $step_stop_time=`$TIME_CMD`
346
347 fi
348
349 STATUS_OUT "make $CMD ${!step_status} at `$TIME_CMD` "
350
351 }
352
353 ##################
354 # function to output status for a step
355 #
356 function REPORT_STEP_STATUS ()
357 {
358 jim.wunderlich 1.1 CMD=$1
359 out_file=${CMD}_out_file
360 step_status=${CMD}_status
361 step_start_time=${CMD}_start_time
362 step_stop_time=${CMD}_stop_time
363
364 MAIL_OUT "Make $CMD Status: ${!step_status}"
365 MAIL_OUT "Make $CMD Start Time: ${!step_start_time}"
366 MAIL_OUT "Make $CMD Stop Time: ${!step_stop_time}"
367 MAIL_OUT " "
368
369 }
370
371 ##################
372 # function to output report for a step
373 #
374 function REPORT_STEP ()
375 {
376 CMD=$1
377 CNT=$2
378 out_file=${CMD}_out_file
379 jim.wunderlich 1.1 step_status=${CMD}_status
380
381 MAIL_OUT "-------------------------------------------------------"
382 MAIL_OUT "Make $CMD output: "
383 MAIL_OUT " "
384 tail -${CNT} ${!out_file} >> $MAIL_FILE
385 MAIL_OUT " "
386
387 }
388
389 ##################
390 # function to output report for a step
391 #
392 function REPORT_STEP_ALL ()
393 {
394 CMD=$1
395 out_file=${CMD}_out_file
396 step_status=${CMD}_status
397
398 MAIL_OUT "-------------------------------------------------------"
399 MAIL_OUT "Make $CMD output: "
400 jim.wunderlich 1.1 MAIL_OUT " "
401 cat ${!out_file} >> $MAIL_FILE
402 MAIL_OUT " "
403
404 }
405
406 ###########################################################################
407 ###########################################################################
408 ##
409 ## Configuration is now complete
410 ## Begin execution
411 ##
412
413 if [ ! -e "$PEG_LOC_ROOT" ] ; then
414 mkdir $PEG_LOC_ROOT
415 fi
416
417
418 TIME_CMD="date -u +%H%M%S"
419
420 platform="$PEGASUS_PLATFORM ($OS_NAME_VER)"
421 jim.wunderlich 1.1 branch="MAIN"
422 datestamp=`date -u +%y%m%d`
423 timestamp=`date -u +%H%M`
424 endtimestamp="NOT_DONE"
425 header="UNKNOWN STATUS: $branch: $platform: $datestamp"
426
427 if [ "$cvs_co_status" != "NOT_TO_RUN" ] ; then
428
429 rm -rf $BASE_DIR
430 mkdir $BASE_DIR
431 fi
432
433 cd $BASE_DIR
434
435
436 INIT_STEP_FILE cvs_co
437 INIT_STEP_FILE patch
438 INIT_STEP_FILE all
439 INIT_STEP_FILE tests
440 INIT_STEP_FILE perftests
441 INIT_STEP_FILE poststarttests
442 jim.wunderlich 1.1 INIT_STEP_FILE standardtests
443
444 # create the running status file
445 touch $BASE_DIR/test_running
446
447 # Create new make output file for mail message.
448 MAIL_FILE=$BASE_DIR/mail_file$RUN_NUM
449 echo " " > $MAIL_FILE
450
451 status_file=$BASE_DIR/running_status_file$RUN_NUM
452 echo " " > $status_file
453
454 STATUS_OUT "Starting nightly test"
455 STATUS_OUT "platform=$platform"
456 STATUS_OUT "Date: $datestamp "
457 STATUS_OUT "Time: $timestamp GMT"
458 STATUS_OUT "Current User=`whoami`"
459 STATUS_OUT "BASE_DIR=$BASE_DIR"
460 STATUS_OUT "CVSROOT=$CVSROOT"
461 STATUS_OUT "PEGASUS_HOME=$PEGASUS_HOME"
462 STATUS_OUT "PEGASUS_ROOT=$PEGASUS_ROOT"
463 jim.wunderlich 1.1 STATUS_OUT "PEGASUS_PLATFORM=$PEGASUS_PLATFORM"
464 STATUS_OUT " "
465 STATUS_OUT "cvs_co_file=$cvs_co_out_file"
466 STATUS_OUT "patch_file=$patch_out_file"
467 STATUS_OUT "make_file=$all_out_file"
468 STATUS_OUT "tests_file=$tests_out_file"
469 STATUS_OUT "perftests_file=$perftests_out_file"
470 STATUS_OUT "poststarttests_file=$poststarttests_out_file"
471 STATUS_OUT "standardtests_file=$standardtests_out_file"
472
473
474 STATUS_OUT " "
475 STATUS_OUT "cvs_co_status=$cvs_co_status"
476 STATUS_OUT "patch_status=$patch_status"
477 STATUS_OUT "all_status=$all_status"
478 STATUS_OUT "tests_status=$tests_status"
479 STATUS_OUT "poststarttests_status=$poststarttests_status"
480 STATUS_OUT "standardtests_status=$standardtests_status"
481 STATUS_OUT "perftests_status=$perftests_status"
482
483 # checkout a new tree
484 jim.wunderlich 1.1 if [ "$cvs_co_status" != "NOT_TO_RUN" ] ; then
485
486 STATUS_OUT "checkout of $MOD_NAME module started at `$TIME_CMD` "
487
488 cvs co -d pegasus $MOD_NAME 1>$cvs_co_out_file 2>&1
489 fi
490
491 if [ -d pegasus ] ; then
492 cvs_co_status="SUCCESS"
493 cd pegasus/src/utils
494 make 1>>$cvs_co_out_file 2>&1
495 cd mu
496 make 1>>$cvs_co_out_file 2>&1
497 cd $BASE_DIR
498 else
499 cvs_co_status="FAILURE"
500 fi
501
502 STATUS_OUT "checkout of file $cvs_co_status at `$TIME_CMD` "
503
504 cd pegasus
505 jim.wunderlich 1.1
506 if [ "$patch_status" != "NOT_TO_RUN" ] ; then
507 if [ -e $PATCH_FILE ] ; then
508 STATUS_OUT "SW changes needed, applying $PATCH_FILE patches"
509 patch -p0 -b -r $PATCH_ERRORS < $PATCH_FILE 1>$patch_out_file 2>&1
510
511 if [ -e $PATCH_ERRORS ] ; then
512 STATUS_OUT echo "ERROR applying patch $PATCH_FILE: see $PATCH_ERRORS file "
513 exit
514 fi
515 else
516 STATUS_OUT "SW changes not needed, no file $PATCH_FILE"
517
518 fi
519 fi
520
521 if [ "$cvs_co_status" == "SUCCESS" ] ; then
522
523 EXEC_MAKE_STEP all
524
525 fi
526 jim.wunderlich 1.1
527 if [ "$cvs_co_status" == "SUCCESS" ] \
528 || [ "$cvs_co_status" == "NOT_TO_RUN" ] \
529 && [ "$all_status" == "SUCCESS" ] \
530 || [ "$all_status" == "NOT_TO_RUN" ]
531 then
532 EXEC_MAKE_STEP tests
533
534 ##
535 ## The setupdevserver rule is available in 2.5.1 but not in 2.5
536 ##
537
538 make setupdevserver 1>>../all_out 2>&1
539
540 ##
541 ## use the following on 2.5. They will also work on 2.5.1
542 ## On 2.5 you have to build the repository or run the prestarttests rule
543 ## rather than then tests rule above. The prestarttests rule built the
544 ## repositories and then ran the unit functional tests.
545 ##
546 ##
547 jim.wunderlich 1.1 ## make --directory=./src/Server -f Makefile install_run 1>>$poststarttests_out_file 2>&1
548 ## make --directory=./src/Clients/ssltrustmgr/tests -f Makefile test_setup 1>>$poststarttests_out_file 2>&1
549 ##
550 ##
551
552 EXEC_TESTMAKE_STEP perftests
553 EXEC_TESTMAKE_STEP poststarttests
554 EXEC_TESTMAKE_STEP standardtests
555 fi
556
557 # Build the test report for mailing
558
559 endtimestamp=`date -u +%H%M` ## get the completion time
560
561 # Determine the overall status of the tests
562
563 if [ "$cvs_co_status" == "SUCCESS" ] \
564 || [ "$cvs_co_status" == "NOT_TO_RUN" ] \
565 && [ "$all_status" == "SUCCESS" ] \
566 || [ "$all_status" == "NOT_TO_RUN" ] \
567 && [ "$tests_status" == "SUCCESS" ] \
568 jim.wunderlich 1.1 || [ "$tests_status" == "NOT_TO_RUN" ] \
569 && [ "$perftests_status" == "SUCCESS" ] \
570 || [ "$perftests_status" == "NOT_TO_RUN" ] \
571 && [ "$poststarttests_status" == "SUCCESS" ] \
572 || [ "$poststarttests_status" == "NOT_TO_RUN" ] \
573 && [ "$standardtests_status" == "SUCCESS" ] \
574 || [ "$standardtests_status" == "NOT_TO_RUN" ]
575 then
576 status="SUCCESS"
577 else
578 status="FAILURE"
579 fi
580
581 header="$status: $branch: $platform: $datestamp"
582
583 MAIL_OUT "Platform: $platform"
584 MAIL_OUT "Branch: $branch"
585 MAIL_OUT "Date: $datestamp"
586 MAIL_OUT "Time: $timestamp GMT"
587 MAIL_OUT "Status: $status "
588 MAIL_OUT "End Time: $endtimestamp GMT"
589 jim.wunderlich 1.1 MAIL_OUT " "
590 MAIL_OUT "-------------------------------------------------------"
591 MAIL_OUT "Mail_To: $MAIL_TO"
592 MAIL_OUT "The_Subject: $header"
593 MAIL_OUT "-------------------------------------------------------"
594 MAIL_OUT " "
595 MAIL_OUT "SW changes:"
596 if [ -e $PATCH_FILE ] ; then
597 MAIL_OUT "Yes SW changes used, and attached below"
598 else
599 MAIL_OUT "No SW changes needed"
600 fi
601
602 MAIL_OUT " "
603 MAIL_OUT "The Time Format is HHMMSS GMT time"
604 MAIL_OUT " "
605 REPORT_STEP_STATUS all
606 REPORT_STEP_STATUS tests
607 REPORT_STEP_STATUS perftests
608 REPORT_STEP_STATUS poststarttests
609 REPORT_STEP_STATUS standardtests
610 jim.wunderlich 1.1
611 MAIL_OUT "-------------------------------------------------------"
612 MAIL_OUT "Pegasus Environment Variables:"
613 printenv | grep PEGASUS >> $MAIL_FILE
614 printenv | grep OPENSSL >> $MAIL_FILE
615 MAIL_OUT " "
616 MAIL_OUT " "
617 MAIL_OUT "-------------------------------------------------------"
618 MAIL_OUT "Additional Configuration Information:"
619 MAIL_OUT " "
620 MAIL_OUT "Current User: `whoami`"
621 MAIL_OUT "CPU Type: $CPU_TYPE"
622 MAIL_OUT "CPU Freq: $CPU_FREQ"
623 MAIL_OUT "CPU Count: $CPU_CNT"
624 MAIL_OUT " "
625 MAIL_OUT "------------------------------"
626 MAIL_OUT "Make version (make -v output):"
627 MAIL_OUT " "
628 make -v >> $MAIL_FILE 2>&1
629 MAIL_OUT " "
630 MAIL_OUT "------------------------------"
631 jim.wunderlich 1.1 MAIL_OUT "Compiler version (c++ -v output):"
632 MAIL_OUT " "
633 c++ -v >> $MAIL_FILE 2>&1
634 MAIL_OUT " "
635 MAIL_OUT "------------------------------"
636 MAIL_OUT "SSL version ( openssl version output):"
637 MAIL_OUT " "
638 openssl version >> $MAIL_FILE 2>&1
639 MAIL_OUT " "
640 MAIL_OUT "------------------------------"
641 MAIL_OUT "uname -a output:"
642 MAIL_OUT " "
643 uname -a >> $MAIL_FILE 2>&1
644 MAIL_OUT " "
645 MAIL_OUT "------------------------------"
646 MAIL_OUT "OS Details (cimserver startup & osinfo output):"
647 MAIL_OUT " "
648 cimserver >> $MAIL_FILE 2>&1
649 MAIL_OUT " "
650 osinfo >> $MAIL_FILE 2>&1
651 MAIL_OUT " "
652 jim.wunderlich 1.1 MAIL_OUT "------------------------------"
653 MAIL_OUT "ending cimserver configuration (cimconfig -lc output):"
654 MAIL_OUT " "
655 cimconfig -lc >> $MAIL_FILE 2>&1
656 MAIL_OUT " "
657 cimserver -s >> $MAIL_FILE 2>&1
658 MAIL_OUT " "
659
660 ## if [ -e $PATCH_FILE ] ; then
661 MAIL_OUT "-------------------------------------------------------"
662 MAIL_OUT "SW Changes used: "
663 MAIL_OUT " "
664 ## cat $PATCH_FILE >> $MAIL_FILE
665 cvs diff 1>> $MAIL_FILE 2>&1
666 MAIL_OUT " "
667 ## fi
668
669 REPORT_STEP all 30
670 REPORT_STEP tests 30
671 REPORT_STEP perftests 150
672 REPORT_STEP poststarttests 30
673 jim.wunderlich 1.1 REPORT_STEP standardtests 30
674
675 MAIL_OUT "-------------------------------------------------------"
676 MAIL_OUT " "
677
678
679 # Mail the report
680
681 #cat $MAIL_FILE | mail -s "$header" $MAIL_TO
682
683
684 # remove the running status file
685
686 rm $BASE_DIR/test_running
687
688 STATUS_OUT "+++++ nightly test all done ++++++++++++++++++++++++++"
689
|