an attempt to fix the f27 build
[vserver-reference.git] / sliceimage.spec
1 %define slicefamily %{pldistro}-%{distroname}-%{_arch}
2
3 # historically there was one dummy 'sliceimage' package, and 
4 # then 2 subpackages with %{slicefamily} and system-%{slicefamily}
5 # however the python spec2make that we need to use on f>=15 is dumb
6 # it cannot detect it's an empty/dummy package, and thus includes it
7 # in e.g. noderepo, which fails
8 # so we now only have the 2 relevant packages
9
10 %define name sliceimage
11 %define version 5.1
12 %define taglevel 11
13
14 # pldistro already in the rpm name
15 #%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
16 %define release %{taglevel}%{?date:.%{date}}
17
18
19 # we don't really need the standard postinstall process from rpm that
20 # strips files and byte-compiles python files. all files in this
21 # package are comming from other rpm files and they've already went
22 # through this post install processing. - baris
23 %define __os_install_post %{nil}
24 %define debug_package %{nil}
25
26 # this is needed as of f27 to prevent rpmbuild from inserting a huge
27 # /usr/lib/.build-id area, that not only is not helping:
28 # it comes in the way when creating the node image
29 %global _build_id_links none
30
31 Vendor: PlanetLab
32 Packager: PlanetLab Central <support@planet-lab.org>
33 Distribution: PlanetLab %{plrelease}
34 URL: %{SCMURL}
35
36 # sliceimage per se is just a placeholder
37 Summary: Slice reference image so node can create slivers of type %{slicefamily}
38 Name: %{name}-%{slicefamily}
39 Version: %{version}
40 Release: %{release}
41 Source0: %{name}-%{version}.tar.bz2
42 License: GPL
43 Group: Applications/System
44 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
45 # in 5.0, this package was named vserver-<>
46 Obsoletes: vserver-%{slicefamily}
47 # this would not be right
48 #BuildArch: noarch
49 AutoReqProv: no
50
51 %description
52 This package provides the nodes with the root image used as the 
53 installation base for new slivers of type %{slicefamily}.
54
55 %package -n sliceimage-system-%{slicefamily}
56 Summary: Reference image for system slices
57 Group: Applications/System
58 AutoReqProv: no
59 Requires: sliceimage-%{slicefamily} >= %{version}-%{release}
60 # in 5.0, this package was named vserver-systemslices-<>
61 Obsoletes: vserver-systemslices-%{slicefamily}
62
63 %description -n sliceimage-system-%{slicefamily} 
64 This package installs the stubs necessary to create system slices
65 (typically planetflow) on top of the reference image.
66
67 %prep
68 %setup -q
69
70 %build
71 pushd sliceimage
72 ./build.sh %{pldistro} %{slicefamily}
73 popd
74
75 %install
76 rm -rf $RPM_BUILD_ROOT
77
78 pushd sliceimage
79 # the path for the root of these is still /vservers/ for compat
80 find vservers | cpio -p -d -u $RPM_BUILD_ROOT/
81 popd
82
83 %clean
84 rm -rf $RPM_BUILD_ROOT
85
86 %files
87 %defattr(-,root,root)
88 /vservers/.vref/%{slicefamily}
89
90 %files -n sliceimage-system-%{slicefamily}
91 %defattr(-,root,root)
92 /vservers/.vstub/%{slicefamily}
93
94 ### for upgrades
95 %post
96 if [ "$PL_BOOTCD" = "1" ] ; then
97    exit 0
98 fi
99 # remove explicit reference to vserver, find out all relevant scripts
100 initScripts=`find /etc/init.d/ -name '*sliceimage*'`
101 if [ "$initScripts" != "" ] ; then
102    for initscript in $initScripts ; do $initscript start ; done
103 fi
104
105 # need to do this for system slices, for when a new image shows up
106 # we've already the service installed and enabled, as systemslices requires the plain package
107 %post -n sliceimage-system-%{slicefamily}
108 if [ "$PL_BOOTCD" = "1" ] ; then
109    exit 0
110 fi
111 # remove explicit reference to vserver, find out all relevant scripts
112 initScripts=`find /etc/init.d/ -name '*sliceimage*'`
113 if [ "$initScripts" != "" ] ; then
114    for initscript in $initScripts ; do $initscript force ; done
115 fi
116
117
118 #%define vcached_pid /var/run/vcached.pid
119
120 %changelog
121 * Tue Jan 19 2016 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sliceimage-5.1-11
122 - make cronjob hourly instead of daily
123
124 * Wed Feb 18 2015 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sliceimage-5.1-10
125 - fixed taglevel in specfile
126
127 * Tue Jul 22 2014 Thomas Dreibholz <dreibh@simula.no> - sliceimage-5.1-9
128 - Post-install fix: exit instead of return
129 - Post-install fix: only call init script when there are init scripts
130
131 * Wed Jul 16 2014 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sliceimage-5.1-8
132 - use systemd unit files to initialize lxc-sliceimage instead of a sysv script
133
134 * Mon Apr 28 2014 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sliceimage-5.1-7
135 - can build pips and gems in sliceimage (currently only gem used in omf)
136 - requires a recent build/pkgs.py if pkgs file does mention pip or gem
137
138 * Wed Jul 03 2013 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sliceimage-5.1-6
139 - attempt to make lxc-sliceimage (update lxc ref. images) more robust
140 - in particular by avoiding chroot when simple file operations are involved
141 - also this activity gets logged into /var/log/lxc-sliceimage.log
142 - it is still unclear whether stub-based images are correctly updated
143
144 * Wed Jun 26 2013 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sliceimage-5.1-5
145 - fixes for heterogeneous slice/nodes
146 - addresses PATH and missing eth0 among others
147
148 * Fri May 24 2013 Andy Bavier <acb@cs.princeton.edu> - sliceimage-5.1-4
149 - Fix machine arch in slivers
150
151 * Wed Oct 24 2012 Andy Bavier <acb@cs.princeton.edu> - sliceimage-5.1-3
152 - More flexible <interface> element generation
153
154 * Mon Jul 09 2012 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sliceimage-5.1-2
155 - for linux-containers: populates refs from stubs (for system slices)
156 - for linux-containers: memory bump to 512M, and add acpi
157
158 * Fri Apr 13 2012 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - sliceimage-5.1-1
159 - first working draft for both mainline and lxc
160
161 * Mon Jan 24 2011 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - vserver-reference-5.0-6
162 - no semantic change - just fixed specfile for git URL
163
164 * Wed Dec 29 2010 Daniel Hokka Zakrisson <dhokka@cs.princeton.edu> - vserver-reference-5.0-5
165 - Remove ugly hack that breaks su/sudo on upgrades.
166
167 * Tue Dec 07 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - vserver-reference-5.0-4
168 - optimize rpm construction - skips stripping and the like
169
170 * Mon Jul 05 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - VserverReference-5.0-3
171 - module name changes
172
173 * Fri Mar 12 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-5.0-2
174 - iron out system slices reference image update
175
176 * Fri Jan 29 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-5.0-1
177 - first working version of 5.0:
178 - pld.c/, db-config.d/ and nodeconfig/ scripts should now sit in the module they belong to
179 - nodefamily is 3-fold with pldistro-fcdistro-arch
180 - new module layout
181
182 * Tue Oct 20 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-16
183 - fix issue about locating the post-install script(s)
184 - this was causing the onelab distro to miss the /etc/sudoers patch
185
186 * Mon Oct 19 2009 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - VserverReference-4.2-15
187 - - comment out requiretty
188
189 * Fri Oct 09 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-14
190 - can use groups in the pkgs file with +++ for space
191
192 * Mon Aug 10 2009 Stephen Soltesz <soltesz@cs.princeton.edu> - VserverReference-4.2-13
193 - Added remove for all VROOTs rather than the last one.  BUG FIX.
194
195 * Tue Mar 24 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-12
196 - fix for fedora 10
197
198 * Thu Oct 02 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-11
199 - on 64bits archs, locates util-vserver's config file correctly
200
201 * Thu Jul 03 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - VserverReference-4.2-10
202 - Use the correct yum.conf to get access to required packages such as pf2slice.
203
204 * Mon Jun 30 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - VserverReference-4.2-9
205 - Scriptlet fix.
206
207 * Fri Jun 27 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - VserverReference-4.2-8
208 - Unset the immutable and iunlink bits to make sure we can install the package.
209
210 * Fri Jun 27 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - VserverReference-4.2-7
211 - Let rpm remove the files.
212
213 * Thu Apr 24 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-6
214 - empty change, this should *not* be a noarch package
215
216 * Mon Apr 21 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-5
217 - tweaked pre script that was removing everything under /vservers/.vref
218 - dismantle vcached (as far as this module is concerned)
219 - sudo to log in /var/log/sudo
220
221 * Fri Mar 28 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-3 VserverReference-4.2-4
222 - bugfix, 4.2-3 was broken as the slicefamily stamp could not get created, thus nm issued 'vuseradd -t default'
223
224 * Wed Mar 26 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - VserverReference-4.2-2 VserverReference-4.2-3
225 - a single node can now install several instances of this package
226 - package name contains slicefamily - <pldistro>-<fcdistro>-<arch>
227 - setattr --iunlink or --~iunlink appropriately (uses /proc/virtual/info)
228 - does not copy yum.conf from host anymore
229
230 * Fri Feb 15 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - vserver-4.2-1 vserver-4.2-2
231 - vserver image to properly use links rather than copies
232
233 * Thu Jan 31 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - vserver-4.2-0 vserver-4.2-1
234 - more careful scan of the vserver-*.pkgs image specifications
235
236 * Tue Sep  1 2005 Mark Huang <mlhuang@cs.princeton.edu> 3.1-1.planetlab
237 - Pre-package vserver-reference instead of building it on nodes
238
239 * Tue Nov 30 2004 Mark Huang <mlhuang@cs.princeton.edu> 3.0-5.planetlab
240 - PL3118 and PL3131 fix: set barrier bit on /vservers instead of old
241   immulink bit. Do not reset the immutable bit on the new
242   vserver-reference directory when deleting it after an error.
243
244 * Mon Nov 15 2004 Mark Huang <mlhuang@cs.princeton.edu> 3.0-4.planetlab
245 - bump release to install Fedora Core 2 updates as of Tue Nov  9 2004
246 - PL3017 fix: rebuild vserver-reference image in case it was built
247   with i386 glibc
248
249 * Mon Nov 15 2004 Mark Huang <mlhuang@cs.princeton.edu> 3.0-4.planetlab
250 - bump release to install Fedora Core 2 updates as of Tue Nov  9 2004
251 - PL3017 fix: rebuild vserver-reference image in case it was built
252   with i386 glibc
253
254 * Sun Oct 10 2004 Mark Huang <mlhuang@cs.princeton.edu> 3.0-3.planetlab
255 - dynamically install reference image at init time
256
257 * Sun Oct 10 2004 Mark Huang <mlhuang@cs.princeton.edu> 3.0-2.planetlab
258 - dynamically install reference image
259
260 * Tue Sep 14 2004 Mark Huang <mlhuang@cs.princeton.edu> 3.0-1.planetlab
261 - initial build
262
263 %define module_current_branch 4.2