fix build
[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 0
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 fuse-pl.init $RPM_BUILD_ROOT/%{_initrddir}/fuse-pl
66 install -D -m 755 nm.init $RPM_BUILD_ROOT/%{_initrddir}/nm
67 install -D -m 644 nm.logrotate $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/nm
68
69 %post
70 chkconfig --add conf_files
71 chkconfig conf_files on
72 chkconfig --add nm
73 chkconfig nm on
74 chkconfig --add fuse-pl
75 chkconfig fuse-pl on
76 if [ "$PL_BOOTCD" != "1" ] ; then
77         service nm restart
78         service fuse-pl restart
79 fi
80
81
82 %preun
83 # 0 = erase, 1 = upgrade
84 if [ $1 -eq 0 ] ; then
85     chkconfig fuse-pl off
86     chkconfig --del fuse-pl
87     chkconfig nm off
88     chkconfig --del nm
89     chkconfig conf_files off
90     chkconfig --del conf_files
91 fi
92
93 %clean
94 rm -rf $RPM_BUILD_ROOT
95
96 %files
97 %defattr(-,root,root,-)
98 %doc
99 %dir %{_datadir}/NodeManager
100 %{_datadir}/NodeManager/*
101 %{_bindir}/forward_api_calls
102 %{_initrddir}/nm
103 %{_initrddir}/conf_files
104 %{_initrddir}/fuse-pl
105 %{_sysconfdir}/logrotate.d/nm
106
107 %changelog
108 * Wed Apr 02 2008 Faiyaz Ahmed <faiyaza@cs.prineton.edu - NodeManager-1.7.4
109 - Codemux supports multiple hosts mapping to single slice
110 - Fixed bug in delegation support where tickets delivered weren't
111   being passed to sm.deliver_ticket().
112 * Fri Mar 28 2008 Faiyaz Ahmed <faiyaza@cs.prineton.edu - NodeManager-1.7.3
113 - Codemux now configured via slice attribute (host,port)
114 - Support for multiple vserver reference images (including different archs)
115 - Mom BW emails are sent to list defined by MyPLC's config
116 - Sirius BW loans honored correctly.  Fixed.
117 - BW totals preserved for dynamic slices so as not to game the system.
118 * Thu Feb 14 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - NodeManager-1.7-1 NodeManager-1.7-2
119 - Configures vsys via vsys slice attribute {name: vsys, value: script}
120 - CPU reservations are now calculated via percentages instead of shares
121 - BW totals preserved for dynamic slices
122 - Closes bug where node cap sets off bw slice alarms for all slices.
123
124 * Wed Oct 03 2007 Faiyaz Ahmed <faiyaza@cs.princeton.edu> .
125 - Switched to SVN.
126
127 * Mon Nov 13 2006 Mark Huang <mlhuang@paris.CS.Princeton.EDU> - 
128 - Initial build.