1 |
< |
### RPM cms dbs-web V03_03_02 |
2 |
< |
## INITENV +PATH PYTHONPATH %i/lib |
1 |
> |
### RPM cms dbs-web V06_00_31 |
2 |
> |
## INITENV +PATH PYTHONPATH %i/lib/python`echo $PYTHON_VERSION | cut -d. -f 1,2`/site-packages |
3 |
> |
## INITENV +PATH PYTHONPATH $ELEMENTTREE_ROOT/share/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages |
4 |
> |
## INITENV SET DDHOME $DBS_WEB_ROOT/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages |
5 |
> |
## INITENV SET DBS_DBPARAM $DDHOME/DBParam |
6 |
> |
## INITENV SET PYTHONPATH ${DDHOME}:${DDHOME}/QueryBuilder:${PYTHONPATH} |
7 |
|
|
8 |
< |
%define cvstag %v |
9 |
< |
Source: cvs://:pserver:anonymous@cmscvs.cern.ch:2401/cvs_server/repositories/CMSSW?passwd=AA_:yZZ3e&module=DBS/Web/DataDiscovery&export=DBS/Web/DataDiscovery&tag=-r%{cvstag}&output=/dbs-web.tar.gz |
10 |
< |
Requires: python dls py2-sqlalchemy cherrypy mysql py2-mysqldb oracle py2-cx-oracle sqlite py2-pysqlite py2-cheetah webtools yui |
8 |
> |
|
9 |
> |
|
10 |
> |
%define cvstag %{realversion} |
11 |
> |
%define cvsserver cvs://:pserver:anonymous@cmscvs.cern.ch:2401/cvs_server/repositories/CMSSW?passwd=AA_:yZZ3e |
12 |
> |
Source: %cvsserver&strategy=checkout&module=DBS/Web/DataDiscovery&nocache=true&export=DBS&tag=-r%{cvstag}&output=/dbs-web.tar.gz |
13 |
> |
Requires: python py2-sqlalchemy cherrypy py2-cheetah webtools yui elementtree dbs-client mysql py2-mysqldb sqlite py2-pysqlite py2-cx-oracle oracle-env py2-simplejson py2-memcached |
14 |
|
|
15 |
|
%prep |
16 |
< |
%setup -n DBS |
16 |
> |
%setup -n DBS/Web/DataDiscovery |
17 |
|
%build |
11 |
– |
(make DDHOME=%_builddir/DBS/Web/DataDiscovery ) |
18 |
|
|
19 |
|
%install |
20 |
|
mkdir -p %{i}/bin |
21 |
|
mkdir -p %{i}/etc/profile.d |
22 |
< |
mkdir -p %{i}/lib/Web/DataDiscovery |
23 |
< |
cp -r Web/DataDiscovery/* %{i}/lib/ |
24 |
< |
|
25 |
< |
ln -s $WEBTOOLS_ROOT %{i}/lib/Web/DataDiscovery/WEBTOOLS |
26 |
< |
ln -s $YUI_ROOT %{i}/lib/Web/DataDiscovery/YUI |
27 |
< |
|
28 |
< |
# here I use octal code \044 for $ sign since I want "$NAME" to be appear in |
29 |
< |
# init.sh file, instead of interpreting it here. |
30 |
< |
(echo "#!/bin/sh"; \ |
31 |
< |
echo "source $PYTHON_ROOT/etc/profile.d/init.sh"; \ |
32 |
< |
echo "source $CHERRYPY_ROOT/etc/profile.d/init.sh"; \ |
33 |
< |
echo "source $PY2_CHEETAH_ROOT/etc/profile.d/init.sh"; \ |
34 |
< |
echo "source $PY2_SQLALCHEMY_ROOT/etc/profile.d/init.sh"; \ |
35 |
< |
echo "source $PY2_PYSQLITE_ROOT/etc/profile.d/init.sh"; \ |
36 |
< |
echo "source $WEBTOOLS_ROOT/etc/profile.d/init.sh"; \ |
37 |
< |
echo "source $YUI_ROOT/etc/profile.d/init.sh"; \ |
38 |
< |
echo "source $ORACLE_ROOT/etc/profile.d/init.sh"; \ |
39 |
< |
echo "source $PY2_CX_ORACLE_ROOT/etc/profile.d/init.sh"; \ |
40 |
< |
echo "source $MYSQL_ROOT/etc/profile.d/init.sh"; \ |
41 |
< |
echo "source $DLS_ROOT/etc/profile.d/init.sh"; \ |
42 |
< |
echo -e "export DLSHOME=$DLS_ROOT/Client/lib"; \ |
43 |
< |
echo -e "export DDHOME=\044DBS_WEB_ROOT/lib/Web/DataDiscovery/"; \ |
44 |
< |
echo -e "export TNS_ADMIN=\044DBS_WEB_ROOT/lib/Web/DataDiscovery/"; \ |
45 |
< |
echo -e "export DBS_DBPARAM=\044DBS_WEB_ROOT/lib/Web/DataDiscovery/DBParam"; \ |
46 |
< |
echo -e "export PYTHONPATH=\044PYTHONPATH:\044DLSHOME"; \ |
47 |
< |
echo -e "export PYTHONPATH=\044DDHOME:\044DDHOME/QueryBuilder:\044PYTHONPATH"; \ |
48 |
< |
|
49 |
< |
) > %{i}/etc/profile.d/dependencies-setup.sh |
50 |
< |
|
51 |
< |
(echo "#!/bin/tcsh"; \ |
52 |
< |
echo "source $PYTHON_ROOT/etc/profile.d/init.csh"; \ |
53 |
< |
echo "source $CHERRYPY_ROOT/etc/profile.d/init.csh"; \ |
54 |
< |
echo "source $PY2_CHEETAH_ROOT/etc/profile.d/init.csh"; \ |
49 |
< |
echo "source $PY2_SQLALCHEMY_ROOT/etc/profile.d/init.csh"; \ |
50 |
< |
echo "source $PY2_PYSQLITE_ROOT/etc/profile.d/init.csh"; \ |
51 |
< |
echo "source $WEBTOOLS_ROOT/etc/profile.d/init.csh"; \ |
52 |
< |
echo "source $YUI_ROOT/etc/profile.d/init.csh"; \ |
53 |
< |
echo "source $ORACLE_ROOT/etc/profile.d/init.csh"; \ |
54 |
< |
echo "source $PY2_CX_ORACLE_ROOT/etc/profile.d/init.csh"; \ |
55 |
< |
echo "source $MYSQL_ROOT/etc/profile.d/init.csh"; \ |
56 |
< |
echo "source $DLS_ROOT/etc/profile.d/init.csh"; \ |
57 |
< |
echo -e "setenv DLSHOME $DLS_ROOT/Client/lib"; \ |
58 |
< |
echo -e "setenv DDHOME \044DBS_WEB_ROOT/lib/Web/DataDiscovery/"; \ |
59 |
< |
echo -e "setenv TNS_ADMIN \044DBS_WEB_ROOT/lib/Web/DataDiscovery/"; \ |
60 |
< |
echo -e "setenv DBS_DBPARAM \044DBS_WEB_ROOT/lib/Web/DataDiscovery/DBParam"; \ |
61 |
< |
echo -e "setenv PYTHONPATH \044PYTHONPATH:\044DLSHOME"; \ |
62 |
< |
echo -e "setenv PYTHONPATH \044DDHOME:\044DDHOME/QueryBuilder:\044PYTHONPATH"; \ |
63 |
< |
) > %{i}/etc/profile.d/dependencies-setup.csh |
22 |
> |
mkdir -p %{i}/etc/init.d |
23 |
> |
mkdir -p %i/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages |
24 |
> |
cp -r * %i/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages |
25 |
> |
|
26 |
> |
# copy init script |
27 |
> |
cp cmsweb_discovery dbs_discovery %{i}/etc/init.d |
28 |
> |
chmod a+x %{i}/etc/init.d/* |
29 |
> |
|
30 |
> |
cd %i/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages |
31 |
> |
cp Templates/DBParam . |
32 |
> |
|
33 |
> |
#ln -s $YUI_ROOT/build YUI |
34 |
> |
|
35 |
> |
# This will generate the correct dependencies-setup.sh/dependencies-setup.csh |
36 |
> |
# using the information found in the Requires statements of the different |
37 |
> |
# specs and their dependencies. |
38 |
> |
echo '#!/bin/sh' > %{i}/etc/profile.d/dependencies-setup.sh |
39 |
> |
echo '#!/bin/tcsh' > %{i}/etc/profile.d/dependencies-setup.csh |
40 |
> |
echo requiredtools `echo %{requiredtools} | sed -e's|\s+| |;s|^\s+||'` |
41 |
> |
for tool in `echo %{requiredtools} | sed -e's|\s+| |;s|^\s+||'` |
42 |
> |
do |
43 |
> |
case X$tool in |
44 |
> |
Xdistcc|Xccache ) |
45 |
> |
;; |
46 |
> |
* ) |
47 |
> |
toolcap=`echo $tool | tr a-z- A-Z_` |
48 |
> |
eval echo ". $`echo ${toolcap}_ROOT`/etc/profile.d/init.sh" >> %{i}/etc/profile.d/dependencies-setup.sh |
49 |
> |
eval echo "source $`echo ${toolcap}_ROOT`/etc/profile.d/init.csh" >> %{i}/etc/profile.d/dependencies-setup.csh |
50 |
> |
;; |
51 |
> |
esac |
52 |
> |
done |
53 |
> |
perl -p -i -e 's|\. /etc/profile\.d/init\.sh||' %{i}/etc/profile.d/dependencies-setup.sh |
54 |
> |
perl -p -i -e 's|source /etc/profile\.d/init\.csh||' %{i}/etc/profile.d/dependencies-setup.csh |
55 |
|
|
56 |
|
# Generate python code from templates |
66 |
– |
cd %{i}/lib/Web/DataDiscovery |
57 |
|
./scripts/genTemplates.sh |
58 |
|
|
59 |
|
%post |
60 |
|
%{relocateConfig}etc/profile.d/dependencies-setup.sh |
61 |
|
%{relocateConfig}etc/profile.d/dependencies-setup.csh |
62 |
+ |
|
63 |
+ |
# setup approripate links and made post install procedure |
64 |
+ |
. $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.sh |
65 |
+ |
ln -s $YUI_ROOT/build $DDHOME/YUI |
66 |
+ |
ln -s $YUI_ROOT $DDHOME/yui |
67 |
+ |
mkdir -p $DDHOME/rss |
68 |
+ |
ln -s $WEBTOOLS_ROOT/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages/Controllers $DDHOME/WEBTOOLS |
69 |
+ |
pdir=$RPM_INSTALL_PREFIX/%{pkgrel}/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages |
70 |
+ |
# if we use cmswttest which is vocms33 |
71 |
+ |
if [ `hostname` == "vocms33.cern.ch" ]; then |
72 |
+ |
${pdir}/scripts/post-install.sh /dbs_discovery_wttest 8003 |
73 |
+ |
cat ${pdir}/DBSDD.conf | sed "s/# URL=/URL=/g" | sed "s/# PORT=/PORT=/g" > ${pdir}/DBSDD.conf.tmp |
74 |
+ |
mv ${pdir}/DBSDD.conf.tmp ${pdir}/DBSDD.conf |
75 |
+ |
else |
76 |
+ |
${pdir}/scripts/post-install.sh `hostname` 8003 |
77 |
+ |
cat ${pdir}/DBSDD.conf | sed "s/# URL=/### _url_=/g" | sed "s/# PORT=/### _port_=/g" > ${pdir}/DBSDD.conf.tmp |
78 |
+ |
mv ${pdir}/DBSDD.conf.tmp ${pdir}/DBSDD.conf |
79 |
+ |
fi |
80 |
+ |
if [ -n "${WEBTOOLS_CONF}" ] && [ -f ${WEBTOOLS_CONF}/dbs/DBParam ]; then |
81 |
+ |
rm -f ${pdir}/DBParam |
82 |
+ |
ln -s ${WEBTOOLS_CONF}/dbs/DBParam ${pdir}/DBParam |
83 |
+ |
else |
84 |
+ |
cp ${pdir}/Templates/DBParam ${pdir} |
85 |
+ |
fi |