%define name bootstrapfs-%{nodefamily}
%define version 2.0
-%define taglevel 2
+%define taglevel 6
# pldistro already in the rpm name
#%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
%build
############################## node-side
-pushd BootstrapFS
+[ -d bootstrapfs ] || ln -s BootstrapFS bootstrapfs
+pushd bootstrapfs
./build.sh %{pldistro}
+for tar in *.tar *.tar.bz2; do
+ echo "* Computing SHA1 checksum for $tar"
+ sha1sum $tar > $tar.sha1sum
+ chmod 444 $tar.sha1sum
+done
popd
############################## server-side
-pushd BootstrapFS/nodeconfig/yum
+# ship all fcdistros for multi-fcdistros myplc, and let the php scripts do the right thing
+pushd bootstrapfs/nodeconfig/yum
# scan fcdistros and catenate all repos in 'stock.repo' so db-config can be distro-independant
for fcdistro in $(ls); do
[ -d $fcdistro ] || continue
rm -rf $RPM_BUILD_ROOT
############################## node-side
-pushd BootstrapFS
-#arch=$(uname -i)
-
-install -D -m 644 bootstrapfs-%{nodefamily}.tar.bz2 \
- $RPM_BUILD_ROOT/var/www/html/boot/bootstrapfs-%{nodefamily}.tar.bz2
-install -D -m 644 bootstrapfs-%{nodefamily}.tar \
- $RPM_BUILD_ROOT/var/www/html/boot/bootstrapfs-%{nodefamily}.tar
-
-for pkgs in $(ls ../build/config.%{pldistro}/bootstrapfs-*.pkgs) ; do
- NAME=$(basename $pkgs .pkgs | sed -e s,bootstrapfs-,,)
- install -D -m 644 %{pldistro}-filesystems/bootstrapfs-${NAME}-%{extensionfamily}.tar.bz2 \
- $RPM_BUILD_ROOT/var/www/html/boot/bootstrapfs-${NAME}-%{extensionfamily}.tar.bz2
- install -D -m 644 %{pldistro}-filesystems/bootstrapfs-${NAME}-%{extensionfamily}.tar \
- $RPM_BUILD_ROOT/var/www/html/boot/bootstrapfs-${NAME}-%{extensionfamily}.tar
+pushd bootstrapfs
+for out in *.tar *.tar.bz2 ; do
+ echo "* Installing $out"
+ install -D -m 644 $out $RPM_BUILD_ROOT/var/www/html/boot/$out
+done
+for out in *.sha1sum; do
+ echo "* Installing $out"
+ install -D -m 444 $out $RPM_BUILD_ROOT/var/www/html/boot/$out
done
popd
############################## server-side
-# xxx unfinished business here
-# xxx in a multi-flavour myplc, we should ship for all fcdistros
-# and let the php scripts do the right thing
-pushd BootstrapFS
-echo "* Installing MyPLC-side nodes yum config utilities"
-echo "* Multi-fcdistro yum stuff"
+# ship all fcdistros for multi-fcdistros myplc, and let the php scripts do the right thing
+pushd bootstrapfs
+echo "* Installing MyPLC-side nodes yum config utilities (support for multi-fcdistro)"
mkdir -p $RPM_BUILD_ROOT/var/www/html/yum/
-rsync -av ./nodeconfig/yum/ $RPM_BUILD_ROOT/var/www/html/yum/
-echo "* Legacy (single fcdistro) yum stuff"
-# expose (fixed) myplc.repo.php as https://<plc>/yum.legacy/myplc.repo.php
-install -D -m 644 ./nodeconfig/yum/myplc.repo.php $RPM_BUILD_ROOT/var/www/html/yum.legacy/myplc.repo.php
-# expose the fcdistro-dependant yum.conf as https://<plc>/yum.legacy/yum.conf
-install -D -m 644 ./nodeconfig/yum/%{distroname}/yum.conf $RPM_BUILD_ROOT/var/www/html/yum.legacy/yum.conf
-# expose the (fcdistro-dependant) stock.repo as https://<plc>/yum.legacy/stock.repo
-install -D -m 644 ./nodeconfig/yum/%{distroname}/yum.myplc.d/stock.repo $RPM_BUILD_ROOT/var/www/html/yum.legacy/stock.repo
+rsync -av ./nodeconfig/yum/ $RPM_BUILD_ROOT/var/www/html/yum/
# Install initscripts
echo "* Installing plc.d initscripts"
%files
%defattr(-,root,root,-)
/var/www/html/boot/bootstrapfs*.tar.bz2
+/var/www/html/boot/bootstrapfs*.tar.bz2.sha1sum
%files plain
%defattr(-,root,root,-)
/var/www/html/boot/bootstrapfs*.tar
+/var/www/html/boot/bootstrapfs*.tar.sha1sum
%files -n nodeyum
%defattr(-,root,root,-)
/var/www/html/yum
-/var/www/html/yum.legacy
/etc/planetlab/db-config.d
/etc/plc.d
%changelog
+* Mon Jul 05 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - BootstrapFS-2.0-6
+- add sha1sum
+- module name changes
+
+* Tue Apr 27 2010 Talip Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - BootstrapFS-2.0-5
+- support different flavours of vservers on nodes
+
+* Mon Apr 12 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-2.0-4
+- fix unmatched $ in URL svn keywords
+
+* Fri Apr 02 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-2.0-3
+- choice between various pldistros is not made at build time, but at run time
+- relies on GetNodeFlavour to expose the node's fcdistro - requires PLCAPI-5.0-5
+- in addition, the baseurl for the myplc repo is http:// and not https:// anymore
+- the https method does not work on fedora 12, and GPG is used below anyway
+
* Fri Mar 12 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - BootstrapFS-2.0-2
- new slicerepo package for exposing stuff to slivers