Setting tag BootstrapFS-1.0-9
[bootstrapfs.git] / bootstrapfs.spec
1 #
2 # $Id$
3 #
4 %define url $URL$
5
6 %define nodefamily %{pldistro}-%{_arch}
7
8 %define name bootstrapfs-%{nodefamily}
9 %define version 1.0
10 %define taglevel 9
11
12 # pldistro already in the rpm name
13 #%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
14 %define release %{taglevel}%{?date:.%{date}}
15
16 Vendor: PlanetLab
17 Packager: PlanetLab Central <support@planet-lab.org>
18 Distribution: PlanetLab %{plrelease}
19 URL: %(echo %{url} | cut -d ' ' -f 2)
20
21 Summary: The PlanetLab Bootstrap Filesystems for %{nodefamily}
22 Name: %{name}
23 Version: %{version}
24 Release: %{release}
25 License: BSD
26 Group: System Environment/Base
27 Source0: %{name}-%{version}.tar.gz
28 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
29 # other archs must be able to install this
30 BuildArch: noarch
31
32 Requires: tar, gnupg, sharutils, bzip2
33
34 AutoReqProv: no
35 %define debug_package %{nil}
36
37 %description
38
39 The PlanetLab Bootstrap Filesystem(s) are downloaded by the
40 BootManager to instantiate a node with a new filesystem.
41
42 %package plain
43 Summary: The (uncompressed) PlanetLab Bootstrap Filesystems for %{nodefamily}
44 Group: System Environment/Base
45 %description plain
46 This package provides the same functions as %{name} but with uncompressed tarball for faster tests.
47
48 %prep
49 %setup -q
50
51 %build
52 pushd BootstrapFS
53 ./build.sh %{pldistro} 
54 popd BootstrapFS
55
56 %install
57 rm -rf $RPM_BUILD_ROOT
58
59 pushd BootstrapFS
60 arch=$(uname -i)
61
62 install -D -m 644 bootstrapfs-%{pldistro}-${arch}.tar.bz2 \
63         $RPM_BUILD_ROOT/var/www/html/boot/bootstrapfs-%{pldistro}-${arch}.tar.bz2
64 install -D -m 644 bootstrapfs-%{pldistro}-${arch}.tar \
65         $RPM_BUILD_ROOT/var/www/html/boot/bootstrapfs-%{pldistro}-${arch}.tar
66
67 for pkgs in $(ls ../build/config.%{pldistro}/bootstrapfs-*.pkgs) ; do 
68     NAME=$(basename $pkgs .pkgs | sed -e s,bootstrapfs-,,)
69     install -D -m 644 %{pldistro}-filesystems/bootstrapfs-${NAME}-${arch}.tar.bz2 \
70                 $RPM_BUILD_ROOT/var/www/html/boot/bootstrapfs-${NAME}-${arch}.tar.bz2 
71     install -D -m 644 %{pldistro}-filesystems/bootstrapfs-${NAME}-${arch}.tar \
72                 $RPM_BUILD_ROOT/var/www/html/boot/bootstrapfs-${NAME}-${arch}.tar 
73 done
74
75 popd
76
77 %clean
78 rm -rf $RPM_BUILD_ROOT
79
80 # If run under sudo
81 if [ -n "$SUDO_USER" ] ; then
82     # Allow user to delete the build directory
83     chown -h -R $SUDO_USER .
84     # Some temporary cdroot files like /var/empty/sshd and
85     # /usr/bin/sudo get created with non-readable permissions.
86     find . -not -perm +0600 -exec chmod u+rw {} \;
87     # Allow user to delete the built RPM(s)
88     chown -h -R $SUDO_USER %{_rpmdir}/%{_arch}
89 fi
90
91 %post
92
93 %files
94 %defattr(-,root,root,-)
95 /var/www/html/boot/bootstrapfs*.tar.bz2
96
97 %files plain
98 %defattr(-,root,root,-)
99 /var/www/html/boot/bootstrapfs*.tar
100
101 %changelog
102 * Fri Oct 09 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-9
103 - can use groups in the pkgs file with +++ for space
104
105 * Tue Apr 07 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-8
106 - bugfix for when a .post script is not needed
107
108 * Tue Apr 07 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-7
109 - search post-install scripts (.post) in path (distro, then planetlab)
110 - mostly useful for externally-defined pldistros
111
112 * Thu Jan 08 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-6
113 - fix build bug when dealing with extensions
114
115 * Thu Dec 04 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-5
116 - optional package bootstrapfs-<pldiftr>-<arch>-plain comes with uncompressed images for faster tests
117
118 * Fri Nov 14 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-4
119 - cosmetic changes in build: displays duration, and shows up in summary
120
121 * Mon Sep 01 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-3
122 - Do not overwrite yumgroups.xml upon updates of noderepo
123
124 * Thu Jul 03 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-2
125 - uses the right yum.conf when building images
126
127 * Mon May 05 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-1
128 - rpm release tag does not need pldistro as it is already part of the rpm name
129
130 * Wed Mar 26 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-0.1-2 BootstrapFS-1.0-0
131 - naming scheme changed, tarball name now contains ''nodefamily'' as <pldistro>-<arch>
132 - new package named 'noderepo' allows to ship the full set of node rpms to another (arch) myplc
133
134 * Fri Jan 18 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - bootstrapfs-0.1-1 bootstrapfs-0.1-2
135 - search more carefully for alternate pkgs files
136 - handling of sysconfig/crontab and creation of site_admin reviewed
137 - (this tag is set with module-tag.py)
138
139 * Fri Sep  2 2005 Mark Huang <mlhuang@cotton.CS.Princeton.EDU> - 
140 - Initial build.