531ecf274be728cac6f92aaef4279ec608c7099f
[plewww.git] / PLCWWW.spec
1 #
2 # $Id$
3 #
4
5 # what the myplc rpm requires
6 %define name PLCWWW
7 %define version PLE.5.0
8 %define taglevel 0
9
10 # no need to mention pldistro as this module differs in both distros
11 #%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
12 %define release %{taglevel}%{?date:.%{date}}
13
14 Summary: PlanetLab Europe (PLC) Web Pages
15 Name: %{name}
16 Version: %{version}
17 Release: %{release}
18 License: PlanetLab
19 Group: Applications/Systems
20 Source0: %{name}-%{version}.tar.gz
21 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
22 BuildArch: noarch
23
24 Vendor: OneLab
25 Packager: OneLab <support@one-lab.org>
26 Distribution: PlanetLab %{version}
27 URL: http://svn.one-lab.org/svn/new_plc_www/
28
29 # We use set everywhere
30 #Requires: httpd >= 2.0
31 Requires: php >= 5.0
32 Requires: postgresql >= 8.0
33 Requires: PLCAPI >= 5.0
34 Requires: drupal = 4.7
35
36 # on centos5, when rebuilding the full monty, we get:
37 # Error: Missing Dependency: perl(GD) is needed by package PLCWWW
38 # and the perl-GD rpm is nowhere to be found
39 AutoReqProv: no
40
41 %description
42 The PLCWWW package is made of the web pages that run on top of the 
43 PLCAPI component to provide the Web Interface to MyPLC users.
44
45 %prep
46 %setup -q
47
48 %build
49 echo "There is no build stage for this component"
50 echo "All files just need to be installed as is from the codebase"
51
52 %install
53 rm -rf $RPM_BUILD_ROOT
54
55 #
56 # plcwww
57 #
58
59 echo "* PLEWWW: Installing web pages"
60 mkdir -p $RPM_BUILD_ROOT/var/www/html
61 # let's be conservative and exclude codebase files, though there should not be any
62 rsync -a --exclude \*.spec --exclude .svn --exclude CVS ./ $RPM_BUILD_ROOT/var/www/html/
63
64 echo "* PLEWWW: Installing config for httpd"
65 install -D -m 644 httpd.conf $RPM_BUILD_ROOT/etc/httpd/conf.d/plcwww.conf
66
67 %post
68 # attempt to perform most of the drupal post-install stuff - assuming version 6.x
69 drupal_settings_dir=/var/www/html/sites/default
70 if [ ! -d $drupal_settings_dir ] ; then
71     echo "Could not find directory $drupal_settings_dir"
72     echo "This suggests that you do not have a planetlab-custom drupal installed"
73     exit 1
74 fi
75 pushd $drupal_settings_dir
76 # tune $db_url
77 if [ ! -f settings.php.distrib ] ; then
78     cp settings.php settings.php.distrib
79     sed -e 's|^[ \t]*\$db_url.*|require_once("plc_config.php");$db_url="pgsql://" . PLC_DB_USER . ":" . PLC_DB_PASSWORD . "@" . PLC_DB_HOST . ":" . PLC_DB_PORT . "/drupal";|' \
80         settings.php.distrib > settings.php
81 fi
82 popd
83 # append our own database creation hacks to the drupal database schema
84 pushd /var/www/html/database
85 if [ ! -f database.pgsql.distrib ] ; then
86     cp database.pgsql database.pgsql.distrib
87     cat database.pgsql.distrib ../drupal-hacks/database.pgsql > database.pgsql
88 fi
89 popd
90 # hack the welcome page for MyPLC
91 pushd /var/www/html/modules
92 if [ ! -f node.module.distrib ] ; then
93     cp node.module node.module.distrib
94     [ -f /var/www/html/drupal-hacks/node.module ] && cp -f /var/www/html/drupal-hacks/node.module /var/www/html/module/node.module
95 fi
96 popd
97
98 %clean
99 rm -rf $RPM_BUILD_ROOT
100
101 %files
102 %defattr(-,root,root,-)
103 /var/www/html
104 /etc/httpd/conf.d/plcwww.conf
105
106 %changelog
107 * Fri Apr 25 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-onelab.4.2-11
108 - everyone is welcome to add nodes
109
110 * Thu Apr 24 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-onelab.4.2-10
111 - node-specific bootcd images to include arch in their name
112
113 * Wed Apr 23 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-onelab.4.2-9
114 - remove explicit dep to bootcd as the rpm name has changed
115
116 * Mon Mar 03 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-7 PLCWWW-4.2-8
117 - noarch
118
119 * Fri Feb 15 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-6 PLCWWW-4.2-7
120 - should fix yum.conf on nodes after install
121
122 * Thu Feb 14 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-5 PLCWWW-4.2-6
123 - uses different path for getbootmedium results - should be safer
124
125 * Sun Feb 10 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-4 PLCWWW-4.2-5
126 - comon icon replaced with the one from the comon website
127
128 * Fri Feb 08 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-3 PLCWWW-4.2-4
129 - displays rpms in the about page
130
131 * Thu Feb 07 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-2 PLCWWW-4.2-3
132 - safer, reference-less, way to implement layout mechnism - see
133 - settings.php for details
134 - setting types properly displayed according to user's role
135 - setting deletion : fixed (was still using code from slice attribute)
136 - more comon buttons : in the nodes and peers index pages
137 - comon_button knows about peer_id
138
139 * Tue Jan 22 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-1 PLCWWW-4.2-2
140 - merged the PlanetLabConf from Princeton's tag PLCWWW-4.1-1
141
142 * Mon Apr 16 2007 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> -
143 - Initial build.