ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CRAB/python/configure_dbsdls
Revision: 1.2
Committed: Sun Mar 12 00:59:22 2006 UTC (19 years, 1 month ago) by afanfani
Branch: MAIN
CVS Tags: CRAB_1_0_6, CRAB_1_0_5
Changes since 1.1: +54 -31 lines
Log Message:
update to use boss 3.6.3

File Contents

# User Rev Content
1 afanfani 1.1 #! /bin/sh
2     #
3     # Stefano Lacaprara <lacaprara@pd.infn.it> INFN Padova
4     #
5     # Installation script for Crab
6     #
7 afanfani 1.2 # 09-March-2006
8 afanfani 1.1
9     # Subdir structure:
10     # top/
11     # Boss/...
12 afanfani 1.2 # python/...
13     # script/...
14     # DBSAPI
15     # DLSAPI
16     #
17 afanfani 1.1 TopDir=`\pwd`
18    
19     #############################################
20     ######## BOSS CONFIGURATION #################
21     #############################################
22 afanfani 1.2 BOSSVER=3_6_3
23 afanfani 1.1 BACKEND=SQLite
24    
25     function configureBoss {
26     ## unpack and configure Boss
27     cd Boss
28     echo "unpacking BOSS distribution ${BOSSVER}"
29     tar xzf boss-v${BOSSVER}-bin.tar.gz
30     cd boss-v${BOSSVER}
31    
32     echo "Creating Env. files"
33     ./CONFIGURE
34     echo "Creating ./BossConfig.clad"
35     cat > ./BossConfig.clad <<EOF
36     # This is the BOSS configuration file
37    
38     [
39     # BOSS temporary directory (where files are extracted from DB)
40     BOSS_TMP_DIR = "/tmp";
41    
42     # BOSS update interval
43     BOSS_MIN_UPD_INT = 30; # at most one upd. every BOSS_MIN_UPD_INT sec.
44     BOSS_MAX_UPD_INT = 180; # at least one upd. every BOSS_MAX_UPD_INT sec.
45    
46     # Maximum retries after post-process finishes before killing RTUpdator
47     # (waits BOSS_UPD_INTERVAL*BOSS_MAX_RETRY seconds)
48     BOSS_MAX_RETRY = 3;
49    
50     # Boss Database Backend
51     DB_BACKEND = "${BACKEND}";
52    
53     # Info sent also to Monalisa (if empty not enabled)
54     ML_URL = "";
55     ]
56     EOF
57    
58     echo "Setting environment"
59     . bossenv.sh
60     }
61    
62     function configureCrab {
63     ## prapare the crab env
64     cd $TopDir
65    
66     # sh style
67     cat > crab.sh <<EOF
68     #! /bin/sh
69     # CRAB related Stuff
70 afanfani 1.2 export CRABDIR=$TopDir
71 afanfani 1.1 export CRABSCRIPT=\${CRABDIR}
72    
73     CRABPATH=\${CRABDIR}/python
74     DLSAPIPATH=$TopDir/DLSAPI
75     CRABPYTHON=\${CRABDIR}/python
76     DBSAPIPYTHON=$TopDir/DBSAPI
77    
78     if [ -z "\$PATH" ]; then
79     export PATH=\${CRABPATH}:\${DLSAPIPATH}
80     else
81     export PATH=\${CRABPATH}:\${PATH}:\${DLSAPIPATH}
82     fi
83     if [ -z "\$PYTHONPATH" ]; then
84     export PYTHONPATH=\${CRABPYTHON}:\${DBSAPIPYTHON}
85     else
86     export PYTHONPATH=\${CRABPYTHON}:\${PYTHONPATH}:\${DBSAPIPYTHON}
87     fi
88    
89     # BOSS related Stuff
90     source $BOSSDIR/bossenv.sh
91    
92     # check whether central boss db is configured
93    
94     # check if *clad files exist
95 afanfani 1.2
96     if [ ! -e ~/.bossrc/BossConfig.clad ]; then
97     if [ -e ~/BossConfig.clad ]; then
98     cp ~/BossConfig.clad ~/.bossrc/BossConfig.clad
99     else
100     echo "User-boss DB not installed: run configureBoss"
101     fi
102     fi
103     if [ ! -e ~/.bossrc/SQLiteConfig.clad ]; then
104     if [ -e ~/SQLiteConfig.clad ]; then
105     cp ~/SQLiteConfig.clad ~/.bossrc/SQLiteConfig.clad
106     else
107     echo "User-boss DB not installed: run configureBoss"
108     fi
109     fi
110     if [ ! -e ~/.bossrc/MySQLRTConfig.clad ]; then
111     if [ -e ~/MySQLRTConfig.clad ]; then
112     cp ~/MySQLRTConfig.clad ~/.bossrc/MySQLRTConfig.clad
113     else
114     echo "User-boss DB not installed: run configureBoss"
115     fi
116 afanfani 1.1 fi
117     # now check a boss command to see if boss DB is up and running
118 afanfani 1.2 if [ \`boss clientID 1>/dev/null | grep -c "not correctly configured"\` -ne 0 ]; then
119 afanfani 1.1 echo "User-boss DB not installed: run configureBoss"
120     fi
121     EOF
122    
123     # csh style
124     cat > crab.csh <<EOF
125     #! /bin/csh
126     # CRAB related Stuff
127 afanfani 1.2 setenv CRABDIR $TopDir
128 afanfani 1.1 setenv CRABSCRIPT \${CRABDIR}
129    
130     set CRABPATH=\${CRABDIR}/python
131     set DLSAPIPATH=$TopDir/DLSAPI
132     set CRABPYTHON=\${CRABDIR}/python
133     set DBSAPIPYTHON=$TopDir/DBSAPI
134    
135     if ( ! \$?path ) then
136     set path=(\${CRABPATH} \${DLSAPIPATH})
137     else
138     set path=( \${CRABPATH} \${path} \${DLSAPIPATH})
139     endif
140     if ( ! \$?PYTHONPATH ) then
141     setenv PYTHONPATH \${CRABPYTHON}:\${DBSAPIPYTHON}
142     else
143     setenv PYTHONPATH \${CRABPYTHON}:\${PYTHONPATH}:\${DBSAPIPYTHON}
144     endif
145    
146     # BOSS related Stuff
147     source $BOSSDIR/bossenv.csh
148    
149     # check whether central boss db is configured
150    
151     # check if *clad files exist
152 afanfani 1.2 if ( ! -e ~/.bossrc/BossConfig.clad ) then
153     if ( -e ~/BossConfig.clad ) then
154     cp ~/BossConfig.clad ~/.bossrc/BossConfig.clad
155     else
156     echo "User-boss DB not installed: run configureBoss"
157     exit 1
158     endif
159     endif
160     if ( ! -e ~/.bossrc/SQLiteConfig.clad ) then
161     if ( -e ~/SQLiteConfig.clad ) then
162     cp ~/SQLiteConfig.clad ~/.bossrc/SQLiteConfig.clad
163     else
164     echo "User-boss DB not installed: run configureBoss"
165     exit 1
166     endif
167     endif
168     if ( ! -e ~/.bossrc/MySQLRTConfig.clad ) then
169     if ( -e ~/MySQLRTConfig.clad ) then
170     cp ~/MySQLRTConfig.clad ~/.bossrc/MySQLRTConfig.clad
171     else
172     echo "User-boss DB not installed: run configureBoss"
173     exit 1
174     endif
175 afanfani 1.1 endif
176     # now check a boss command to see if boss DB is up and running
177     if ( \`boss clientID |& grep -c "not correctly configured"\` ) then
178     echo "User-boss DB not installed: run configureBoss"
179     exit 1
180     endif
181     EOF
182     return
183     }
184    
185     configureBoss
186     configureCrab