/
setupO2O.sh
executable file
·100 lines (78 loc) · 2.15 KB
/
setupO2O.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
#!/bin/sh
# deployment-specific params
BASEDIR=/data/O2O
RELEASE=CMSSW_10_0_5
RELEASEDIR=/cvmfs/cms.cern.ch/slc6_amd64_gcc630/cms/cmssw/${RELEASE}
# command params
OPTIND=1
SUBSYS=""
JOBNAME=""
while getopts "h?s:j:" opt; do
case $opt in
h|\?)
echo "Mo' to spiego..."
exit 0
;;
s) SUBSYS=$OPTARG
;;
j) JOBNAME=$OPTARG
;;
esac
done
shift $((OPTIND-1))
[ "$1" = "--" ] && shift
O2ONAME=$SUBSYS$JOBNAME
#echo "name=$O2ONAME, subsystem=$SUBSYS, job=$JOBNAME"
# o2o specific params
LOGFILE=${BASEDIR}/logs/$O2ONAME.log
JOBDIR=${BASEDIR}/${SUBSYS}/${JOBNAME}
DATE=`date`
# functions
function logRun(){
echo "----- new job started for $1 at -----" | tee -a $LOGFILE
echo $DATE | tee -a $LOGFILE
}
function log() {
echo "[`date`] : $@ " | tee -a $LOGFILE
}
function submit_command() {
logRun $1
o2o run -n $1 "$2" | tee -a $LOGFILE
}
function submit_test_command() {
logRun $1
o2o --db dev run -n $1 "$2" | tee -a $LOGFILE
}
function submit_cmsRun() {
COMMAND="cmsRun $2 destinationDatabase={db} destinationTag={tag}"
logRun $1
o2o run -n $1 "$COMMAND" | tee -a $LOGFILE
}
function submit_test_cmsRun() {
COMMAND="cmsRun $2 destinationDatabase={db} destinationTag={tag}"
logRun $1
o2o --db dev run -n $1 "$COMMAND" | tee -a $LOGFILE
}
function submit_popCon() {
COMMAND="popconRun $2 -d {db} -t {tag} -c"
logRun $1
o2o run -n $1 "$COMMAND" | tee -a $LOGFILE
}
function submit_test_popCon() {
COMMAND="popconRun $2 -d {db} -t {tag} -c"
logRun $1
o2o --db dev run -n $1 "$COMMAND" | tee -a $LOGFILE
}
# global variables
export PYTHON_EGG_CACHE=/data/condbpro
export SCRAM_ARCH=slc6_amd64_gcc630
export O2O_LOG_FOLDER=/data/O2O/logs/${O2ONAME}
export COND_AUTH_PATH=$BASEDIR
source /cvmfs/cms.cern.ch/cmsset_default.sh
cd ${RELEASEDIR}/src
eval `scramv1 run -sh`
# set up OCCI workaround
export LD_PRELOAD=$CMS_ORACLEOCCI_LIB
# workaround for oracle tnsnames
export TNS_ADMIN=/cvmfs/cms.cern.ch/slc6_amd64_gcc530/cms/oracle-env/29/etc
cd ${JOBDIR}