ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CRAB/python/configure
Revision: 1.17
Committed: Thu Jul 27 13:12:25 2006 UTC (18 years, 9 months ago) by slacapra
Branch: MAIN
CVS Tags: HEAD_20092006
Changes since 1.16: +8 -8 lines
Log Message:
add \$CRABDIR to configureBoss scrpit path on warning message

File Contents

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