import sioc only when needed.
[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 16
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 * Tue Oct 20 2009 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - NodeManager-1.8-16
112 - - don't hardcode the device name (depends on util-vserver-pl change rev. 15385)
113
114 * Fri Oct 09 2009 Marc Fiuczynski <mef@cs.princeton.edu> - NodeManager-1.8-15
115 - The seed for random previously was the meaning of life (i.e., 42) but
116 - that resulted in a not so random choice for the hmac.  This
117 - implementation now uses a random.seed that is based on the current
118 - time.
119
120 * Tue Oct 06 2009 Marc Fiuczynski <mef@cs.princeton.edu> - NodeManager-1.8-14
121 - Minor fix such that sliverauth.py makes a more specific call to
122 - GetSliceTags that include that specific tagname it is looking for.
123
124 * Sat Sep 19 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.8-13
125 - Fix bug that prevented 'OVERRIDES' for working correctly.
126
127 * Tue Sep 08 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-12
128 - Increase disk limits to 10G per sliver
129 - Sanity check slice for home directory before starting (hack)
130 - Check codemux arguments
131
132 * Thu Aug 06 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-11
133 - * Fix Delegation
134 - * Move plcapi in plugin-api GetSlivers() calls.
135 - * Persistent Authcheck and resync session when auth failure
136
137 * Tue Aug 04 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-10
138 - Disabling sliverauth module.  Not ready for deployment.
139
140 * Mon Aug 03 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-9
141 - Fixing overrides semantics.
142
143 * Mon Aug 03 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-8
144 - Generalized plugins
145 - Fixed initscript start up bug.
146
147 * Tue Jun 30 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-7
148 - * Fix delegation authentication problem
149 - * Can now disable codemux using _default slice, and setting tag {codemux: -1}
150
151 * Tue May 26 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.8-4
152 - * Rerun initscripts when slice goes from disabled to enabled.
153
154 * Tue May 26 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.8-4
155 - * Update session key when out of synch with PLC
156 - * PLCDefaults uses tagname
157
158 * Fri Apr 17 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - NodeManager-1.8-3
159 - log invokations of vsys
160
161 * Fri Mar 27 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-2
162
163 * Tue Mar 24 2009 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.8-1
164
165 * Wed Apr 02 2008 Faiyaz Ahmed <faiyaza@cs.prineton.edu - NodeManager-1.7.4
166 - Codemux supports multiple hosts mapping to single slice
167 - Fixed bug in delegation support where tickets delivered weren't
168   being passed to sm.deliver_ticket().
169 * Fri Mar 28 2008 Faiyaz Ahmed <faiyaza@cs.prineton.edu - NodeManager-1.7.3
170 - Codemux now configured via slice attribute (host,port)
171 - Support for multiple vserver reference images (including different archs)
172 - Mom BW emails are sent to list defined by MyPLC's config
173 - Sirius BW loans honored correctly.  Fixed.
174 - BW totals preserved for dynamic slices so as not to game the system.
175 * Thu Feb 14 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-1 NodeManager-1.7-2
176 - Configures vsys via vsys slice attribute {name: vsys, value: script}
177 - CPU reservations are now calculated via percentages instead of shares
178 - BW totals preserved for dynamic slices
179 - Closes bug where node cap sets off bw slice alarms for all slices.
180
181 * Wed Oct 03 2007 Faiyaz Ahmed <faiyaza@cs.princeton.edu> .
182 - Switched to SVN.
183
184 * Mon Nov 13 2006 Mark Huang <mlhuang@paris.CS.Princeton.EDU> - 
185 - Initial build.