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