ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/webtools.spec
Revision: 1.33
Committed: Fri Mar 21 13:52:45 2008 UTC (17 years, 1 month ago) by valya
Branch: MAIN
CVS Tags: WEBTOOLS-APPS_20080327_1, WEBTOOLS-APPS_20080327, WEBTOOLS-APPS_20080326_6, WEBTOOLS-APPS_20080326_5, WEBTOOLS-APPS_20080326_4, WEBTOOLS-APPS_20080326_3, WEBTOOLS-APPS_20080326_2, WEBTOOLS-APPS_20080326, DBSweb_260308_1
Changes since 1.32: +16 -0 lines
Log Message:
Added creation of security.ini for cmswttest otherwise check if /sitedb/security.ini exists then link to it

File Contents

# User Rev Content
1 eulisse 1.30 ### RPM cms webtools 1.3.0
2 eulisse 1.10 ## INITENV +PATH PYTHONPATH %i/lib/python`echo $PYTHON_VERSION | cut -d. -f 1,2`/site-packages
3 eulisse 1.1 %define moduleName WEBTOOLS
4     %define exportName WEBTOOLS
5 eulisse 1.32 %define cvstag V01-03-04
6 eulisse 1.1 %define cvsserver cvs://:pserver:anonymous@cmscvs.cern.ch:2401/cvs_server/repositories/CMSSW?passwd=AA_:yZZ3e
7     Source: %cvsserver&strategy=checkout&module=%{moduleName}&nocache=true&export=%{exportName}&tag=-r%{cvstag}&output=/%{moduleName}.tar.gz
8 eulisse 1.29 Requires: python cherrypy py2-cheetah yui sqlite zlib py2-pysqlite expat openssl bz2lib db4 gdbm py2-cx-oracle py2-formencode py2-pycrypto oracle beautifulsoup py2-sqlalchemy
9 eulisse 1.8 Provides: perl(CGI)
10     Provides: perl(Crypt::CBC)
11     Provides: perl(SecurityModule)
12 eulisse 1.28 Provides: perl(DBI)
13 eulisse 1.1 %prep
14     %setup -n %{moduleName}
15     %build
16 eulisse 1.9 rm -rf %i/etc/profile.d
17 eulisse 1.29 mkdir -p %i/etc/profile.d
18     echo '#!/bin/sh' > %{i}/etc/profile.d/dependencies-setup.sh
19     echo '#!/bin/tcsh' > %{i}/etc/profile.d/dependencies-setup.csh
20     echo requiredtools `echo %{requiredtools} | sed -e's|\s+| |;s|^\s+||'`
21     for tool in `echo %{requiredtools} | sed -e's|\s+| |;s|^\s+||'`
22 eulisse 1.9 do
23 eulisse 1.29 case X$tool in
24     Xdistcc|Xccache )
25     ;;
26     * )
27     toolcap=`echo $tool | tr a-z- A-Z_`
28     eval echo ". $`echo ${toolcap}_ROOT`/etc/profile.d/init.sh" >> %{i}/etc/profile.d/dependencies-setup.sh
29     eval echo "source $`echo ${toolcap}_ROOT`/etc/profile.d/init.csh" >> %{i}/etc/profile.d/dependencies-setup.csh
30     ;;
31     esac
32 eulisse 1.9 done
33    
34 eulisse 1.29 perl -p -i -e 's|\. /etc/profile\.d/init\.sh||' %{i}/etc/profile.d/dependencies-setup.sh
35     perl -p -i -e 's|source /etc/profile\.d/init\.csh||' %{i}/etc/profile.d/dependencies-setup.csh
36 eulisse 1.1 %install
37     mkdir -p %i/etc
38 eulisse 1.10 mkdir -p %i/bin
39     mkdir -p %i/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages
40 eulisse 1.29 rm -rf Applications
41 eulisse 1.10 cp -r * %i/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages
42     cp cmsWeb %i/bin
43 eulisse 1.1 cat << \EOF_CHERRYPY_CONF > %i/etc/cherrypy.conf
44     # Serve a complete directory
45     [/Common]
46 eulisse 1.6 tools.staticdir.on = True
47     tools.staticdir.dir = %i/Common
48 eulisse 1.1 [/Templates]
49 eulisse 1.6 tools.staticdir.on = True
50     tools.staticdir.dir = %i/Templates
51 eulisse 1.5 # Serve a complete directory
52     [/WEBTOOLS/Common]
53 eulisse 1.6 tools.staticdir.on = True
54     tools.staticdir.dir = %i/Common
55 eulisse 1.5 [/WEBTOOLS/Templates]
56 eulisse 1.6 tools.staticdir.on = True
57     tools.staticdir.dir = %i/Templates
58 eulisse 1.1 EOF_CHERRYPY_CONF
59 eulisse 1.2 cat << \EOF_APACHE2_HEADER > %i/etc/apache2-header.conf
60     RewriteEngine On
61     RewriteBase /cms/services
62     EOF_APACHE2_HEADER
63    
64     cat << \EOF_APACHE2_CONF > %i/etc/apache2.conf
65     <Directory %i/Common>
66     Allow from all
67     </Directory>
68     <Directory %i/Templates>
69     Allow from all
70     </Directory>
71     EOF_APACHE2_CONF
72    
73     cat << \EOF_APACHE2_FOOTER > %i/etc/apache2-footer.conf
74     RewriteRule ^/cms/services/webtools/Common(.*)$ %i/Common$1
75     RewriteRule ^/cms/services/webtools/Templates(.*)$ %i/Templates$1
76     EOF_APACHE2_FOOTER
77 eulisse 1.14 %define pythonv %(echo $PYTHON_ROOT | cut -d. -f1,2)
78 eulisse 1.1 %post
79     %{relocateConfig}etc/cherrypy.conf
80 eulisse 1.2 %{relocateConfig}etc/apache2.conf
81     %{relocateConfig}etc/apache2-header.conf
82     %{relocateConfig}etc/apache2-footer.conf
83 eulisse 1.9 %{relocateConfig}etc/profile.d/dependencies-setup.sh
84     %{relocateConfig}etc/profile.d/dependencies-setup.csh
85 eulisse 1.14 perl -p -i -e "s!\@RPM_INSTALL_PREFIX\@!$RPM_INSTALL_PREFIX/%pkgrel!" $RPM_INSTALL_PREFIX/%pkgrel/bin/cmsWeb
86 valya 1.33
87    
88     # setup approripate links and made post install procedure
89     . $RPM_INSTALL_PREFIX/%{pkgrel}/etc/profile.d/init.sh
90     if [ `hostname`=="cmswttest.cern.ch" ]; then
91     cat > $RPM_INSTALL_PREFIX/%{pkgrel}/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages/Tools/SiteDBCore/security.ini << POST_EOF
92     [database]
93     dbtype = sqlite
94     dbname = $RPM_INSTALL_PREFIX/%{pkgrel}/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages/Tools/SiteDBCore/sitedb.db
95     POST_EOF
96     else
97     if [ -n "${WEBTOOLS_CONF}" ] && [ -f ${WEBTOOLS_CONF}/sitedb/security.ini ]; then
98     ln -s ${WEBTOOLS_CONF}/sitedb/security.ini $RPM_INSTALL_PREFIX/%{pkgrel}/lib/python`echo $PYTHON_VERSION | cut -d. -f1,2`/site-packages/Tools/SiteDBCore/security.ini
99     fi
100     fi
101