Tagging module BootstrapFS - BootstrapFS-1.0-7
[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 7
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 * Tue Apr 07 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-7
103 - search post-install scripts (.post) in path (distro, then planetlab)
104 - mostly useful for externally-defined pldistros
105
106 * Thu Jan 08 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-6
107 - fix build bug when dealing with extensions
108
109 * Thu Dec 04 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-5
110 - optional package bootstrapfs-<pldiftr>-<arch>-plain comes with uncompressed images for faster tests
111
112 * Fri Nov 14 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-4
113 - cosmetic changes in build: displays duration, and shows up in summary
114
115 * Mon Sep 01 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-3
116 - Do not overwrite yumgroups.xml upon updates of noderepo
117
118 * Thu Jul 03 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-2
119 - uses the right yum.conf when building images
120
121 * Mon May 05 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-1.0-1
122 - rpm release tag does not need pldistro as it is already part of the rpm name
123
124 * Wed Mar 26 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-0.1-2 BootstrapFS-1.0-0
125 - naming scheme changed, tarball name now contains ''nodefamily'' as <pldistro>-<arch>
126 - new package named 'noderepo' allows to ship the full set of node rpms to another (arch) myplc
127
128 * Fri Jan 18 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - bootstrapfs-0.1-1 bootstrapfs-0.1-2
129 - search more carefully for alternate pkgs files
130 - handling of sysconfig/crontab and creation of site_admin reviewed
131 - (this tag is set with module-tag.py)
132
133 * Fri Sep  2 2005 Mark Huang <mlhuang@cotton.CS.Princeton.EDU> - 
134 - Initial build.