conf_files has support for @SLICEFAMILY@ in sources
[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.7
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 # Old Node Manager
29 Obsoletes: sidewinder, sidewinder-common
30
31 # vuseradd, vuserdel
32 Requires: vserver-%{slicefamily}
33 Requires: util-vserver >= 0.30.208-17
34
35 # vserver.py
36 Requires: util-vserver-python
37
38 # Signed tickets
39 Requires: gnupg
40
41 # Contact API server
42 Requires: curl
43
44 # Uses function decorators
45 Requires: python >= 2.4
46
47 %description
48 The PlanetLab Node Manager manages all aspects of PlanetLab node and
49 slice management once the node has been initialized and configured by
50 the Boot Manager. It periodically contacts its management authority
51 for configuration updates. It provides an XML-RPC API for performing
52 local operations on slices.
53
54 %prep
55 %setup -q
56
57 %build
58 %{__make} %{?_smp_mflags}
59
60 %install
61 rm -rf $RPM_BUILD_ROOT
62 %{__make} %{?_smp_mflags} install DESTDIR="$RPM_BUILD_ROOT"
63
64 install -D -m 755 conf_files.init $RPM_BUILD_ROOT/%{_initrddir}/conf_files
65 install -D -m 755 nm.init $RPM_BUILD_ROOT/%{_initrddir}/nm
66 install -D -m 644 nm.logrotate $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/nm
67
68 %post
69 chkconfig --add conf_files
70 chkconfig conf_files on
71 chkconfig --add nm
72 chkconfig nm on
73 if [ "$PL_BOOTCD" != "1" ] ; then
74         service nm restart
75 fi
76
77
78 %preun
79 # 0 = erase, 1 = upgrade
80 if [ $1 -eq 0 ] ; then
81     chkconfig nm off
82     chkconfig --del nm
83     chkconfig conf_files off
84     chkconfig --del conf_files
85 fi
86
87 %clean
88 rm -rf $RPM_BUILD_ROOT
89
90 %files
91 %defattr(-,root,root,-)
92 %doc
93 %dir %{_datadir}/NodeManager
94 %{_datadir}/NodeManager/*
95 %{_bindir}/forward_api_calls
96 %{_initrddir}/nm
97 %{_initrddir}/conf_files
98 %{_sysconfdir}/logrotate.d/nm
99
100 %changelog
101 * Thu Jun 19 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.7-16
102
103 - enables a vsys slice attribute to end with 'a', 'c', or 'l' characters without
104 - NM going bonkers.
105
106
107 * Wed Jun 18 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.7-15
108
109 - enable restart if vsys.conf changes also.
110
111
112 * Wed Jun 18 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.7-14
113
114 - the _restart flag for vsys was getting lost when looking across multiple
115 - vservers.  adding the 'or' should preserve any 'True' returns from
116 - createVsysDir()
117
118
119 * Tue Jun 17 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-13
120
121 - Time out curl when no response for 90 seconds.
122
123
124 * Fri Jun 13 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - NodeManager-1.7-12
125 - Patch designed to work around the vsys-fail-to-restart problem with
126 - non-existent directories, and the vuseradd-fail-to-work on directories that
127 - do exist.  
128
129 - This patch will work in conjunction with the new vsys patch.
130
131
132 * Wed May 14 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - NodeManager-1.7-10
133 - fixed doc build by locating locally installed DTDs at build-time
134
135 * Fri May 09 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-9
136 - * Reverted vserver start to forking before VServer.start to avoid defunct procs.* House keeping in various places.
137
138 * Fri May 09 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - NodeManager-1.7-8
139 - merge changes for myplc-docs from trunk
140
141 * Wed Apr 16 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-7
142
143 - Set vcVHI_CONTEXT as slice_id for fprobe-ulog to mark packets with.
144
145
146 * Wed Apr 09 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-5 NodeManager-1.7-6
147
148 - * Codemux will use PLC_API_HOST when PLC_PLANETFLOW_HOST isn't defined.
149
150
151 * Fri Apr 04 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-4 NodeManager-1.7-5
152 - * vdu limitting when NM restarts and slices are re-init'ed
153 - * CoDemux config parser update.  Now tolerates spaces.
154
155 * Wed Apr 02 2008 Faiyaz Ahmed <faiyaza@cs.prineton.edu - NodeManager-1.7.4
156 - Codemux supports multiple hosts mapping to single slice
157 - Fixed bug in delegation support where tickets delivered weren't
158   being passed to sm.deliver_ticket().
159 * Fri Mar 28 2008 Faiyaz Ahmed <faiyaza@cs.prineton.edu - NodeManager-1.7.3
160 - Codemux now configured via slice attribute (host,port)
161 - Support for multiple vserver reference images (including different archs)
162 - Mom BW emails are sent to list defined by MyPLC's config
163 - Sirius BW loans honored correctly.  Fixed.
164 - BW totals preserved for dynamic slices so as not to game the system.
165 * Thu Feb 14 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-1 NodeManager-1.7-2
166 - Configures vsys via vsys slice attribute {name: vsys, value: script}
167 - CPU reservations are now calculated via percentages instead of shares
168 - BW totals preserved for dynamic slices
169 - Closes bug where node cap sets off bw slice alarms for all slices.
170
171 * Wed Oct 03 2007 Faiyaz Ahmed <faiyaza@cs.princeton.edu> .
172 - Switched to SVN.
173
174 * Mon Nov 13 2006 Mark Huang <mlhuang@paris.CS.Princeton.EDU> - 
175 - Initial build.