86898e3d404bccad4c71224a69b25c700766f979
[nodemanager.git] / NodeManager.spec
1 #
2 # $Id$
3 #
4 %define url $URL$
5
6 %define slicefamily %{pldistro}-%{distroname}-%{_arch}
7
8 %define name NodeManager
9 %define version 1.8
10 %define taglevel 13
11
12 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
13
14 Summary: PlanetLab Node Manager
15 Name: %{name}
16 Version: %{version}
17 Release: %{release}
18 License: PlanetLab
19 Group: System Environment/Daemons
20 Source0: %{name}-%{version}.tar.gz
21 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
22
23 Vendor: PlanetLab
24 Packager: PlanetLab Central <support@planet-lab.org>
25 Distribution: PlanetLab %{plrelease}
26 URL: %(echo %{url} | cut -d ' ' -f 2)
27
28 BuildArch: noarch
29
30 # Old Node Manager
31 Obsoletes: sidewinder, sidewinder-common
32
33 # vuseradd, vuserdel
34 Requires: vserver-%{slicefamily}
35 Requires: util-vserver >= 0.30.208-17
36
37 # vserver.py
38 Requires: util-vserver-python > 0.3-16
39
40 # Signed tickets
41 Requires: gnupg
42
43 # Contact API server
44 Requires: curl
45
46 # Uses function decorators
47 Requires: python >= 2.4
48
49 # sioc/plnet
50 Requires: pyplnet >= 4.3
51
52 %description
53 The PlanetLab Node Manager manages all aspects of PlanetLab node and
54 slice management once the node has been initialized and configured by
55 the Boot Manager. It periodically contacts its management authority
56 for configuration updates. It provides an XML-RPC API for performing
57 local operations on slices.
58
59 %prep
60 %setup -q
61
62 %build
63 %{__make} %{?_smp_mflags}
64
65 %install
66 rm -rf $RPM_BUILD_ROOT
67 %{__make} %{?_smp_mflags} install DESTDIR="$RPM_BUILD_ROOT"
68
69 install -D -m 755 conf_files.init $RPM_BUILD_ROOT/%{_initrddir}/conf_files
70 install -D -m 755 fuse-pl.init $RPM_BUILD_ROOT/%{_initrddir}/fuse-pl
71 install -D -m 755 nm.init $RPM_BUILD_ROOT/%{_initrddir}/nm
72 install -D -m 644 nm.logrotate $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/nm
73
74 %post
75 chkconfig --add conf_files
76 chkconfig conf_files on
77 chkconfig --add nm
78 chkconfig nm on
79 chkconfig --add fuse-pl
80 chkconfig fuse-pl on
81 if [ "$PL_BOOTCD" != "1" ] ; then
82         service nm restart
83         service fuse-pl restart
84 fi
85
86
87 %preun
88 # 0 = erase, 1 = upgrade
89 if [ $1 -eq 0 ] ; then
90     chkconfig fuse-pl off
91     chkconfig --del fuse-pl
92     chkconfig nm off
93     chkconfig --del nm
94     chkconfig conf_files off
95     chkconfig --del conf_files
96 fi
97
98 %clean
99 rm -rf $RPM_BUILD_ROOT
100
101 %files
102 %defattr(-,root,root,-)
103 %{_datadir}/NodeManager/
104 %{_bindir}/forward_api_calls
105 %{_initrddir}/nm
106 %{_initrddir}/conf_files
107 %{_initrddir}/fuse-pl
108 %{_sysconfdir}/logrotate.d/nm
109
110 %changelog
111 * Sat Sep 19 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.8-13
112 - Fix bug that prevented 'OVERRIDES' for working correctly.
113
114 * Tue Sep 08 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-12
115 - Increase disk limits to 10G per sliver
116 - Sanity check slice for home directory before starting (hack)
117 - Check codemux arguments
118
119 * Thu Aug 06 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-11
120 - * Fix Delegation
121 - * Move plcapi in plugin-api GetSlivers() calls.
122 - * Persistent Authcheck and resync session when auth failure
123
124 * Tue Aug 04 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-10
125 - Disabling sliverauth module.  Not ready for deployment.
126
127 * Mon Aug 03 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-9
128 - Fixing overrides semantics.
129
130 * Mon Aug 03 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-8
131 - Generalized plugins
132 - Fixed initscript start up bug.
133
134 * Tue Jun 30 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-7
135 - * Fix delegation authentication problem
136 - * Can now disable codemux using _default slice, and setting tag {codemux: -1}
137
138 * Tue May 26 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.8-4
139 - * Rerun initscripts when slice goes from disabled to enabled.
140
141 * Tue May 26 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.8-4
142 - * Update session key when out of synch with PLC
143 - * PLCDefaults uses tagname
144
145 * Fri Apr 17 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - NodeManager-1.8-3
146 - log invokations of vsys
147
148 * Fri Mar 27 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-2
149
150 * Tue Mar 24 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-1
151
152 * Wed Apr 02 2008 Faiyaz Ahmed <faiyaza@cs.prineton.edu - NodeManager-1.7.4
153 - Codemux supports multiple hosts mapping to single slice
154 - Fixed bug in delegation support where tickets delivered weren't
155   being passed to sm.deliver_ticket().
156 * Fri Mar 28 2008 Faiyaz Ahmed <faiyaza@cs.prineton.edu - NodeManager-1.7.3
157 - Codemux now configured via slice attribute (host,port)
158 - Support for multiple vserver reference images (including different archs)
159 - Mom BW emails are sent to list defined by MyPLC's config
160 - Sirius BW loans honored correctly.  Fixed.
161 - BW totals preserved for dynamic slices so as not to game the system.
162 * Thu Feb 14 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-1 NodeManager-1.7-2
163 - Configures vsys via vsys slice attribute {name: vsys, value: script}
164 - CPU reservations are now calculated via percentages instead of shares
165 - BW totals preserved for dynamic slices
166 - Closes bug where node cap sets off bw slice alarms for all slices.
167
168 * Wed Oct 03 2007 Faiyaz Ahmed <faiyaza@cs.princeton.edu> .
169 - Switched to SVN.
170
171 * Mon Nov 13 2006 Mark Huang <mlhuang@paris.CS.Princeton.EDU> - 
172 - Initial build.