X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=bootcd.spec;h=e07379fb2078b957e69cc790956f1a53901abbdd;hb=cd07242d54498d34d6747e6d0bfd8031f41f282f;hp=cb81a2261b31096317266c7c67a1e0616227e66b;hpb=731979becafbbae24c90488a541f9577de2b124c;p=bootcd.git diff --git a/bootcd.spec b/bootcd.spec index cb81a22..e07379f 100644 --- a/bootcd.spec +++ b/bootcd.spec @@ -1,22 +1,22 @@ # -# $Id$ -# -%define url $URL$ - -%define nodefamily %{pldistro}-%{_arch} +%define nodefamily %{pldistro}-%{distroname}-%{_arch} %define name bootcd-%{nodefamily} -%define version 4.2 -%define taglevel 9 +%define version 5.0 +%define taglevel 6 # pldistro already in the rpm name #%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}} %define release %{taglevel}%{?date:.%{date}} +# structure - this results in 2 packages +# bootcd-initscripts - has the plc.d/ scripts +# bootcd- - has the actual stuff for a given nodefamily + Vendor: PlanetLab Packager: PlanetLab Central Distribution: PlanetLab %{plrelease} -URL: %(echo %{url} | cut -d ' ' -f 2) +URL: %{SCMURL} Summary: Boot CD material for %{nodefamily} Name: %{name} @@ -33,18 +33,39 @@ Requires: dosfstools, mkisofs, gzip, mtools, syslinux Requires: pyplnet +# 5.0 now has 3-fold nodefamily +%define obsolete_nodefamily %{pldistro}-%{_arch} +Obsoletes: bootcd-%{obsolete_nodefamily} + AutoReqProv: no %define debug_package %{nil} %description The Boot CD securely boots PlanetLab nodes into an immutable -environment. +environment. This package is designed to be installed on a MyPLC +installation and provide the basics for the PLC to able to compute +BootCDs for its attached nodes. +See http://svn.planet-lab.org/wiki/NodeFamily + + +%package -n bootcd-initscripts +Summary: initscripts for the MyPLC installation +Group: System Environment/Base +%description -n bootcd-initscripts +This package contains the init scripts that get fired when the PLC is +restarted. + +### avoid having yum complain about updates, as stuff is moving around +# plc.d/bootcd* +Conflicts: MyPLC <= 4.3 %prep %setup -q %build -pushd BootCD +[ -d bootcd ] || ln -s BootCD bootcd + +pushd bootcd # Build the reference image ./prep.sh %{pldistro} %{nodefamily} @@ -54,12 +75,12 @@ popd %install rm -rf $RPM_BUILD_ROOT -pushd BootCD +pushd bootcd # Install the reference image and build scripts install -d -m 755 $RPM_BUILD_ROOT/%{_datadir}/%{name} install -m 755 build.sh $RPM_BUILD_ROOT/%{_datadir}/%{name}/ -install -m 755 kupdate.sh $RPM_BUILD_ROOT/%{_datadir}/%{name}/ +install -m 755 kvariant.sh $RPM_BUILD_ROOT/%{_datadir}/%{name}/ tar cpf - \ build/isofs/bootcd.img \ build/isofs/kernel \ @@ -69,30 +90,70 @@ tar cpf - \ configurations | \ tar -C $RPM_BUILD_ROOT/%{_datadir}/%{name}/ -xpf - +for script in bootcd bootcd-kernel; do + install -D -m 755 plc.d/$script $RPM_BUILD_ROOT/etc/plc.d/$script +done popd %clean rm -rf $RPM_BUILD_ROOT -# If run under sudo -if [ -n "$SUDO_USER" ] ; then - # Allow user to delete the build directory - chown -h -R $SUDO_USER . - # Some temporary cdroot files like /var/empty/sshd and - # /usr/bin/sudo get created with non-readable permissions. - find . -not -perm +0600 -exec chmod u+rw {} \; - # Allow user to delete the built RPM(s) - chown -h -R $SUDO_USER %{_rpmdir}/%{_arch} -fi - %files %defattr(-,root,root,-) %{_datadir}/%{name} -%post -[ -f /etc/planetlab/nodefamily ] || { mkdir -p /etc/planetlab ; echo %{nodefamily} > /etc/planetlab/nodefamily ; } +%files -n bootcd-initscripts +%defattr(-,root,root,-) +/etc/plc.d %changelog +* Wed Dec 01 2010 Thierry Parmentelat - bootcd-5.0-6 +- use /usr/lib/syslinux/mkdiskimage or installed mkdiskimage + +* Wed Sep 01 2010 Thierry Parmentelat - bootcd-5.0-5 +- remove remainging reference to planet-lab.org + +* Mon Jul 05 2010 Baris Metin - BootCD-5.0-4 +- module name changes + +* Wed Jun 23 2010 Thierry Parmentelat - BootCD-5.0-3 +- nicer initscript now uses 'action' from /etc/init.d/functions + +* Tue Apr 20 2010 Talip Baris Metin - BootCD-5.0-2 +- obsolete old bootcd versions + +* Fri Jan 29 2010 Thierry Parmentelat - BootCD-5.0-1 +- First working version of 5.0: +- pld.c/, db-config.d/ and nodeconfig/ scripts should now sit in the module they belong to +- nodefamily is 3-fold with pldistro-fcdistro-arch +- new module bootcd-inistscripts + +* Sat Jan 09 2010 Thierry Parmentelat - BootCD-4.2-17 +- support for fedora 12 + +* Sun Dec 27 2009 Thierry Parmentelat - BootCD-4.2-16 +- fix build on fedora12 + +* Fri Sep 04 2009 Stephen Soltesz - BootCD-4.2-15 +- record the ntp time to the hwclock. this is a bootcd operation, but it is +- repeated in the bootmanager to handle all CDs without this operation + +* Mon Jun 29 2009 Marc Fiuczynski - BootCD-4.2-14 +- Daniel''s update to generalize the kvariant support. + +* Wed Apr 08 2009 Thierry Parmentelat - BootCD-4.2-13 +- robust to node config file specified with a relative path + +* Tue Apr 07 2009 Thierry Parmentelat - BootCD-4.2-12 +- fix specfile - 4.2-11 would not build + +* Tue Apr 07 2009 Thierry Parmentelat - BootCD-4.2-11 +- Added support for handling kernel variants +- http://svn.planet-lab.org/wiki/BootcdVariant + +* Tue Mar 24 2009 Thierry Parmentelat - BootCD-4.2-10 +- mkfs.vfat output removed prior to invokation - fix needed on fedora 10 + * Tue Dec 30 2008 Marc Fiuczynski - BootCD-4.2-9 - Added kupdate.sh @@ -149,4 +210,4 @@ fi * Fri Sep 2 2005 Mark Huang - - Initial build. -%define module_current_branch 3.4 +%define module_current_branch 4.2