Merge branch 'master' of ssh://git.onelab.eu/git/plewww
[plewww.git] / plewww.spec
1 #
2 # $Id$
3 #
4
5 # what the myplc rpm requires
6 %define name plewww
7 %define version 4.3
8 %define taglevel 50
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 BuildRequires: python
24
25 Vendor: OneLab
26 Packager: OneLab <support@one-lab.org>
27 Distribution: PlanetLab %{version}
28 URL: http://svn.one-lab.org/svn/new_plc_www/
29
30 # We use set everywhere
31 #Requires: httpd >= 2.0
32 Requires: php >= 5.0
33 Requires: postgresql >= 8.0
34 Requires: PLCAPI >= 4.3
35 Requires: drupal = 4.7
36 Requires: plewww-plekit
37
38 # this is what MyPLC requires
39 Provides: PLCWWW
40
41 # on centos5, when rebuilding the full monty, we get:
42 # Error: Missing Dependency: perl(GD) is needed by package PLCWWW
43 # and the perl-GD rpm is nowhere to be found
44 AutoReqProv: no
45
46 %package plekit
47 Summary: Utilities used by the plewww pages
48 Group: Applications/Systems
49
50 %description
51 The plewww package is made of the web pages that run on top of the 
52 PLCAPI component to provide the Web Interface to MyPLC users.
53
54 %description plekit
55 This subset of the plewww package has general purpose features for the benefit of other PL-related UI components.
56
57 %prep
58 %setup -q
59
60 %build
61 echo "Compressing javascript files"
62 make compress
63
64 %install
65 rm -rf $RPM_BUILD_ROOT
66
67 #
68 # plewww
69 # xxx : uninstall should undo this
70 #
71
72 echo "* PLEWWW: Installing web pages"
73 mkdir -p $RPM_BUILD_ROOT/var/www/html
74 # exclude codebase just in case
75 rsync -a --exclude jsmin.py --exclude Makefile --exclude httpd --exclude \*.spec --exclude .svn ./ $RPM_BUILD_ROOT/var/www/html/
76
77 echo "* PLEWWW: Installing conf files for httpd"
78 mkdir -p $RPM_BUILD_ROOT/etc/httpd/conf.d
79 install -D -m 644 httpd/*.conf $RPM_BUILD_ROOT/etc/httpd/conf.d/
80
81 %post
82 # attempt to perform most of the drupal post-install stuff - assuming version 6.x
83 drupal_settings_dir=/var/www/html/sites/default
84 if [ ! -d $drupal_settings_dir ] ; then
85     echo "Could not find directory $drupal_settings_dir"
86     echo "This suggests that you do not have a planetlab-custom drupal installed"
87     exit 1
88 fi
89 pushd $drupal_settings_dir
90 # tune $db_url
91 if [ ! -f settings.php.drupal ] ; then
92     cp settings.php settings.php.drupal
93     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";|' \
94         settings.php.drupal > settings.php
95 fi
96 popd
97 # append our own database creation hacks to the drupal database schema
98 pushd /var/www/html/database
99 if [ ! -f database.pgsql.drupal ] ; then
100     cp database.pgsql database.pgsql.drupal
101     cat database.pgsql.drupal ../drupal-hacks/database.pgsql > database.pgsql
102 fi
103 popd
104 # hack the welcome page for MyPLC
105 pushd /var/www/html/modules
106 for module in user node; do
107     # backup only once
108     [ -f ${module}.module.drupal ] || cp ${module}.module ${module}.module.drupal
109     # always update so a change in our file can make through
110     cp -f /var/www/html/drupal-hacks/${module}.module /var/www/html/modules/${module}.module
111 done
112 popd
113
114 %clean
115 rm -rf $RPM_BUILD_ROOT
116
117 %files
118 %defattr(-,root,root,-)
119 /var/www/html/modules
120 /var/www/html/planetlab
121 /var/www/html/googlemap
122 /var/www/html/drupal-hacks
123 /etc/httpd/conf.d
124
125 %files plekit
126 /var/www/html/plekit
127
128 %changelog
129 * Mon Sep 06 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - plewww-4.3-50
130 - cosmetic, rendering of textareas was like password fields
131
132 * Fri Sep 03 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - plewww-4.3-49
133 - bugfix in slice page, had wrong (null) expiration date
134 - upgraded to raphael-1.5.2, don't minimize this lib
135 - nicer layout for password fields as well
136 - long tag values in the slice page (ssh keys..) get truncated, plain value show on hovering
137 - marginally optimized slice page (2 GetNodes call down)
138 - minimal profiling cap., and usable in the slice page with _GET[profiling]=1
139 - _GET[resa_slots] to set number of slots, _GET[resa_offset] to book in the future (in hours)
140 - reservations can cope with a bit more slots - will need scrolling someday
141 - omf text has hyperlinks to the tools
142
143 * Wed Sep 01 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - plewww-4.3-48
144 - reservation section now effective
145 - can set omf_control at slice-creation time
146 - can set node as reservable at node-creation time
147 - nicer text input fields + various tweaks
148
149 * Tue Jul 06 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - plewww-4.3-47
150 - show nodegroups form to add new groups
151
152 * Wed Jun 16 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - plewww-4.3-46
153 - just tagging plewww again to test module-tag on git
154
155 * Tue Jun 15 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - PLEWWW-4.3-45
156 - encode strings properly in forms.
157
158 * Wed Apr 28 2010 S.Çağlar Onur <caglar@cs.princeton.edu> - PLEWWW-4.3-44
159 - Use readfile() function to reduce the memory footprint
160
161 * Fri Apr 02 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-43
162 - removed all deprecated functions for PHP-5.3 on fedora 12
163
164 * Tue Mar 16 2010 Talip Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - PLEWWW-4.3-42
165 - * exclude DNS from subnet checking
166 - * redirect pi's and techs to register wizard. only display 'Insuffieient privs' error to users'
167 - * allow longer abbreviated names
168 - * don't let empty strings kill the server (postgresql and apache)
169
170 * Sat Jan 09 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-41
171 - disable drupal user registration (hard: patching the user module)
172
173 * Wed Dec 16 2009 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - PLEWWW-4.3-40
174 - * show error messages for update interface
175 - * 'Add Node' is admin only
176 - * add site selector for 'Add Node'
177
178 * Thu Nov 26 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-39
179 - new add-interface page : now has a checkbox for non-primary interfaces to chose between virtual or physical
180 - this affects the settings of ifname and alias that were formerly set unconditionally
181 - review the interface-checking javascript code
182 - changed the interface to plekitform, method is now optional and part of an options hash
183
184 * Tue Nov 17 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-38
185 - can't use php objects for showing node status, this is too slow
186 - fix interface add page
187
188 * Mon Nov 16 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-37
189 - consistency in the way nodes status is displayed in the node and slice areas
190 - extra tags columns show up on the nodes page as well, tweaked in the process
191 - roles management in person page fixed
192
193 * Sun Nov 15 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-36
194 - displaying node tags in the nodes page as well
195 - table headers now can have a 'title' that shows up when hovering on the column header
196
197 * Sat Nov 14 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-35
198 - bugfix for the custom sortAlphaNumeric{Bottom,Top} sortable types
199
200 * Fri Nov 13 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-34
201 - extensible set of columns in the nodes area of the (my)slice page
202 - nodegroups can be added/deleted/updated
203 - tags management improved marginally
204
205 * Tue Oct 20 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-33
206 - fix pending sites page - was getting fooled by ext_consortium_id=None
207
208 * Tue Oct 20 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-32
209 - resetting tag as something went wrong when setting 31
210
211 * Wed Oct 07 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-30
212 - nicer look for slice creation, (public) sites
213 - users show with all their sites in the persons page
214
215 * Fri Sep 18 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-29
216 - reviewed registration pages for persons and sites
217
218 * Fri Sep 11 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-28
219 - increase memory limit in the nodes page
220
221 * Thu Sep 10 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-27
222 - fixes one typo
223
224 * Mon Sep 07 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-26
225 - minor/cosmetic
226
227 * Mon Aug 10 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - PLEWWW-4.3-25
228 - Add default Interface tags to extra interfaces.
229 - Add clearer 'Add New PCU' link on node page.
230 - Disable user registration for tech and PI roles.
231
232 * Thu Jul 02 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-24
233 - new 'controller' instantiation state available in add slice page
234
235 * Thu Jul 02 2009 Baris Metin <tmetin@sophia.inria.fr> - PLEWWW-4.3-23
236 - exclude datepicler.js from jsmin
237 - table sort function for Last Contact columns
238 - drop options for generic boot images
239
240 * Wed Jul 01 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-22
241 - displays editable mac address for interfaces
242 - properly sorts bandwidths
243 - new 'controller' slice instantiation method
244 - bugfix, division by zero when displaying a just-changed node
245
246 * Tue Jun 16 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-21
247 - bugfix with linetabs
248
249 * Tue Jun 16 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-20
250 - fix add interface from the node page
251
252 * Mon Jun 15 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - PLEWWW-4.3-19
253 - only add users that are enabled and not yet a member of the slice
254 - fix to plc_peers
255 - my sites, my nodes, my persons improvements for users with multiple sites
256 - adds a script to minimize the java script files.
257
258 * Sun Jun 07 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-18
259 - planetlab module to show 'All My Sites Nodes' link rather than 'My Site Nodes' if several sites
260
261 * Sun Jun 07 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-17
262 - first draft for pcu-handling features
263 - lighter contrat for PLE/PLC toggles
264 - as many 'my site'-like  links as the user has sites
265
266 * Wed Jun 03 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-16
267 - fix for whitelisted nodes
268 - now links to the node register wizard
269 - can enable sites
270 - various other minor fixes, like broken planetlab.module for techs, and login link
271
272 * Sat May 30 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-15
273 - plekittable knows how to turn off sort-on-load, and the admin users pages do
274 - + various cosmetic fixes
275
276 * Tue May 26 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-14
277 - a few minor improvements pushed on PLE
278
279 * Fri May 15 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-13
280 - fix for sites that were displayed as not public
281 - improvements to the python interface to sortable tables for monitor
282
283 * Fri May 15 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-12
284 - various improvements
285
286 * Wed May 06 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-11
287 - sliver page now correctly shows sliver tags
288 - support for download-node-usb-partition and various other improvements
289
290 * Tue Apr 28 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-10
291 - a few tweaks and typos fixed on PLE
292
293 * Tue Apr 21 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-9
294 - slice_add & node_download dialogs use plekit
295 - slice_add can add people in the slice
296 - various improvements after rollout on PLE
297
298 * Fri Apr 17 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-8
299 - cosmetic fixes to be in 4.3-rc2
300 - also a first (unpackaged) draft of the plekit table in python
301
302 * Tue Apr 14 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-7
303 - search in tables more robust
304
305 * Thu Apr 09 2009 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - PLEWWW-4.3-6
306 - performance improvements
307
308 * Thu Apr 09 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-5
309 - detect expired session and redirect to the login page
310
311 * Thu Apr 09 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-4
312 - improve browser health - was using too many cycles
313
314 * Tue Apr 07 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-3
315 - more consistency between views, and cosmetic changes
316
317 * Mon Mar 30 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-2
318 - area for managing slice tags
319
320 * Tue Mar 24 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLEWWW-4.3-1
321 - first checkpoint tag for PLEWWW
322 - mostly functionally complete, probably a lot of tweaks still needed
323
324 * Fri Apr 25 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-onelab.4.2-11
325 - everyone is welcome to add nodes
326
327 * Thu Apr 24 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-onelab.4.2-10
328 - node-specific bootcd images to include arch in their name
329
330 * Wed Apr 23 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-onelab.4.2-9
331 - remove explicit dep to bootcd as the rpm name has changed
332
333 * Mon Mar 03 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-7 PLCWWW-4.2-8
334 - noarch
335
336 * Fri Feb 15 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-6 PLCWWW-4.2-7
337 - should fix yum.conf on nodes after install
338
339 * Thu Feb 14 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-5 PLCWWW-4.2-6
340 - uses different path for getbootmedium results - should be safer
341
342 * Sun Feb 10 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-4 PLCWWW-4.2-5
343 - comon icon replaced with the one from the comon website
344
345 * Fri Feb 08 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-3 PLCWWW-4.2-4
346 - displays rpms in the about page
347
348 * Thu Feb 07 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-2 PLCWWW-4.2-3
349 - safer, reference-less, way to implement layout mechnism - see
350 - settings.php for details
351 - setting types properly displayed according to user's role
352 - setting deletion : fixed (was still using code from slice attribute)
353 - more comon buttons : in the nodes and peers index pages
354 - comon_button knows about peer_id
355
356 * Tue Jan 22 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - PLCWWW-4.2-1 PLCWWW-4.2-2
357 - merged the PlanetLabConf from Princeton's tag PLCWWW-4.1-1
358
359 * Mon Apr 16 2007 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> -
360 - Initial build.