2011-06-26 14:06:38 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
SELF=`echo $0|sed -e 's/\.\///'`
|
2011-06-26 14:38:09 +00:00
|
|
|
CLOG1=log.$SELF.1
|
|
|
|
CLOG2=log.$SELF.2
|
2011-06-26 14:06:38 +00:00
|
|
|
|
2011-06-26 14:07:54 +00:00
|
|
|
> ${CLOG1}
|
|
|
|
> ${CLOG2}
|
2011-06-26 14:06:38 +00:00
|
|
|
|
|
|
|
main() {
|
2011-06-26 15:16:10 +00:00
|
|
|
#
|
|
|
|
DSTART=`date --utc`
|
|
|
|
printf "\n$0: Started at ${DSTART}"
|
|
|
|
E1=`date '+%s'`
|
2011-06-26 15:26:15 +00:00
|
|
|
# require ^releng_, avoid running (your)self explcitly
|
2011-06-26 15:44:09 +00:00
|
|
|
for s in `ls | grep ^releng_ | grep -v ${SELF} | sort`; do
|
2011-06-26 14:06:38 +00:00
|
|
|
if [ -x ${s} ]; then
|
2011-06-26 15:16:10 +00:00
|
|
|
printf "\n$0: Running ${s}..."
|
2011-06-26 14:23:13 +00:00
|
|
|
T1=`date '+%s'`
|
2011-06-26 20:51:16 +00:00
|
|
|
set +e
|
|
|
|
# -rc -clean are shared options amongst the all releng scripts
|
2011-06-27 14:31:39 +00:00
|
|
|
./${s} -rc 1>>${CLOG1} 2>>${CLOG2}
|
2011-06-26 14:06:38 +00:00
|
|
|
RET=$?
|
2011-06-26 14:23:13 +00:00
|
|
|
T2=`date '+%s'`
|
|
|
|
let TS="${T2}-${T1}"
|
2011-06-26 20:51:16 +00:00
|
|
|
case ${RET} in
|
|
|
|
0)
|
|
|
|
printf "done in ${TS} sec. ok."
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
printf "done in ${TS} sec. FAILED WITH EXIT CODE: $RET;"
|
|
|
|
;;
|
|
|
|
esac
|
2011-06-26 14:06:38 +00:00
|
|
|
set -e
|
|
|
|
fi
|
|
|
|
done
|
2011-06-26 15:16:10 +00:00
|
|
|
|
|
|
|
DEND=`date --utc`
|
2011-06-26 20:57:22 +00:00
|
|
|
printf "\n$0: Finished at ${DEND}. "
|
2011-06-26 15:16:10 +00:00
|
|
|
E2=`date '+%s'`
|
|
|
|
let ES="${E2}-${E1}"
|
2011-06-26 20:57:22 +00:00
|
|
|
printf "(total time elapsed ${ES} sec)."
|
|
|
|
printf "\n$0: Results saved in ${CLOG1} and ${CLOG2}.\n\n"
|
2011-06-26 15:16:10 +00:00
|
|
|
|
2011-06-26 14:06:38 +00:00
|
|
|
exit 0
|
|
|
|
}
|
|
|
|
|
|
|
|
#
|
|
|
|
main
|