ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/COMP/CMSDIST/webtools.spec
Revision: 1.39
Committed: Fri Jun 27 08:29:26 2008 UTC (16 years, 10 months ago) by egeland
Branch: MAIN
CVS Tags: forFrontend-3, forPHEDEX313a, forPHEDEX313, forPHEDEX312, zx20090115, forPHEDEX311, forPHEDEX310, forPHEDEX310pre2, forPHEDEX310pre1, ofctest, forPHEDEX307, forFrontend-2, forPHEDEX306, forFrontend-1, forPHEDEX305, forPHEDEX-web301, re-deps-20080722, forPHEDEX304, forPHEDEX-datasvc110, forPHEDEX-web300, forPHEDEX-web110, re20080627
Changes since 1.38: +5 -1 lines
Log Message:
add perl SecurityModule to PERL5LIB

File Contents

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