ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/dbs-light.spec
Revision: 1.4
Committed: Sat Sep 22 02:01:00 2007 UTC (17 years, 7 months ago) by valya
Branch: MAIN
Changes since 1.3: +2 -2 lines
Log Message:
Fix syntax of defined variables

File Contents

# User Rev Content
1 valya 1.2 ### RPM cms dbs-light DBS_1_0_8_pre2
2 valya 1.1 ## INITENV +PATH PYTHONPATH %i/lib/Clients/Python
3    
4 valya 1.3 # in order to build DBS RPM you MUST specify which schema/client version should be used.
5 valya 1.4 %define schemaVer DBS_1_0_7
6     %define clientVer DBS_1_0_7
7 valya 1.3
8 valya 1.1 %define cvstag %v
9     Source: cvs://:pserver:anonymous@cmscvs.cern.ch:2401/cvs_server/repositories/CMSSW?passwd=AA_:yZZ3e&module=DBS&export=DBS&tag=-r%{cvstag}&output=/dbs-light.tar.gz
10     #Source: cvs://:pserver:anonymous@cmscvs.cern.ch:2401/cvs_server/repositories/CMSSW?passwd=AA_:yZZ3e&module=DBS/{Servers/JavaServer,Clients/Python,Schema/NeXtGen/DBS-NeXtGen-SQLite_DEPLOYABLE.sql}&export=DBS&tag=-r%{cvstag}&output=/dbs-light.tar.gz
11     Requires: python openssl apache-ant sqlite
12     #Requires: apache-ant mysql oracle apache-tomcat
13    
14     %prep
15     %setup -n DBS
16     %build
17     echo "PWD=$PWD"
18     # server
19     cd Servers/JavaServer
20     echo "PWD=$PWD"
21     ant --noconfig dist
22     cd ../../
23     # client
24     (make DBSHOME=%_builddir/DBS/Clients/Python )
25     # schema
26     (make DBSHOME=%_builddir/DBS/Schema/NeXtGen )
27    
28     %install
29     mkdir -p %{i}/bin
30     mkdir -p %{i}/lib
31     # server
32     mkdir -p %{i}/Servers/JavaServer/
33     cp -r Servers/JavaServer/* %{i}/Servers/JavaServer
34    
35     mkdir -p %{i}/etc/profile.d
36     (echo "#!/bin/sh"; \
37     echo "source $PYTHON_ROOT/etc/profile.d/init.sh"; \
38     echo "source $SQLITE_ROOT/etc/profile.d/init.sh"; \
39     echo "source $APACHE_ANT_ROOT/etc/profile.d/init.sh"; \
40     echo "source $OPENSSL_ROOT/etc/profile.d/init.sh"; \
41 valya 1.3 echo -e "export PYTHONPATH=\044PYTHONPATH:\044DBS_LIGHT_ROOT/Clients/Python:\044DBS_LIGHT_ROOT/Clients/Python/DBSAPI"; \
42     echo -e "export DBS_CLIENT_CONFIG=\044DBS_LIGHT_ROOT/Clients/Python/DBSAPI/dbs.config"; \
43 valya 1.1 ) > %{i}/etc/profile.d/dependencies-setup.sh
44    
45     (echo "#!/bin/tcsh"; \
46     echo "source $PYTHON_ROOT/etc/profile.d/init.csh"; \
47     echo "source $SQLITE_ROOT/etc/profile.d/init.csh"; \
48     echo "source $APACHE_ANT_ROOT/etc/profile.d/init.csh"; \
49     echo "source $OPENSSL_ROOT/etc/profile.d/init.csh"; \
50 valya 1.3 echo -e "setenv PYTHONPATH \044PYTHONPATH:\044DBS_LIGHT_ROOT/Clients/Python:\044DBS_LIGHT_ROOT/Clients/Python/DBSAPI"; \
51     echo -e "setenv DBS_CLIENT_CONFIG=\044DBS_LIGHT_ROOT/Clients/Python/DBSAPI/dbs.config"; \
52 valya 1.1 ) > %{i}/etc/profile.d/dependencies-setup.csh
53    
54     # client
55     mkdir -p %{i}/Clients/Python
56     cp -r Clients/Python/DBSAPI %{i}/Clients/Python
57    
58     # schema
59     ls -l Schema/NeXtGen
60     mkdir -p %{i}/Schema/NeXtGen
61     cp -r Schema/NeXtGen/DBS-NeXtGen-SQLite_DEPLOYABLE.sql %{i}/Schema/NeXtGen/
62    
63     %post
64     %{relocateConfig}etc/profile.d/dependencies-setup.sh
65     %{relocateConfig}etc/profile.d/dependencies-setup.csh
66    
67     # setup approripate links and made post install procedure
68     . $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.sh
69    
70     # install DBS stand-along DB
71     if [ ! -f $RPM_INSTALL_PREFIX/%{pkgrel}/dbs.db ]; then
72     sqlite3 $RPM_INSTALL_PREFIX/%{pkgrel}/dbs.db < \
73     $RPM_INSTALL_PREFIX/%{pkgrel}/Schema/NeXtGen/DBS-NeXtGen-SQLite_DEPLOYABLE.sql
74     fi
75    
76     # correct DBS client config file to operate in stand-along mode
77     cat $RPM_INSTALL_PREFIX/%{pkgrel}/Clients/Python/DBSAPI/dbs.config | \
78 valya 1.3 sed "s/DBSHOME/#DBSHOME/g" |
79     sed "s/JAVAHOME/#JAVAHOME/g" |
80 valya 1.1 sed "s/MODE=POST/#MODE=POST/g" > \
81     $RPM_INSTALL_PREFIX/%{pkgrel}/Clients/Python/DBSAPI/dbs.config.tmp
82     cat >> $RPM_INSTALL_PREFIX/%{pkgrel}/Clients/Python/DBSAPI/dbs.config.tmp << EOF
83     # RPM AUTO-CONFIG FOR STANDALONE MODE
84     MODE=EXEC
85     DBSHOME=`echo $DBS_LIGHT_ROOT`/Servers/JavaServer
86     JAVAHOME=`echo $JAVA_HOME`
87     EOF
88     mv $RPM_INSTALL_PREFIX/%{pkgrel}/Clients/Python/DBSAPI/dbs.config.tmp \
89     $RPM_INSTALL_PREFIX/%{pkgrel}/Clients/Python/DBSAPI/dbs.config
90    
91     # correct DBS server config file
92     cat > $RPM_INSTALL_PREFIX/%{pkgrel}/Servers/JavaServer/etc/context.xml << EOF
93 valya 1.3 <Context path="/servlet/DBSServlet" docBase="DBSServlet" debug="5" reloadable="true" crossContext="true">
94 valya 1.1 <Resource name="jdbc/dbs"
95     auth="Container"
96     type="javax.sql.DataSource"
97     maxActive="0"
98     maxIdle="1"
99     maxWait="-1"
100     username=""
101     password=""
102     driverClassName="org.sqlite.JDBC"
103     url="jdbc:sqlite:`echo $RPM_INSTALL_PREFIX/%{pkgrel}/dbs.db`"/>
104 valya 1.3 <SupportedSchemaVersion schemaversion="%{schemaVer}" />
105     <SupportedClientVersions clientversions="%{clientVer}" />
106     <DBSBlockConfig maxBlockSize="20000" maxBlockFiles="50" />
107     </Context>
108 valya 1.1 EOF
109     cd $RPM_INSTALL_PREFIX/%{pkgrel}/Servers/JavaServer/
110     ant --noconfig jar
111     ls -l $PWD
112     find . -name "*.jar"