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