stupid me
[nodeconfig.git] / nodeconfig.spec
index ef5e128..c130029 100644 (file)
@@ -1,10 +1,10 @@
 #
-# $Id: PLCWWW.spec 7881 2008-01-22 14:45:22Z thierry $
+# $Id$
 #
 %define url $URL: svn+ssh://thierry@svn.planet-lab.org/svn/WWW/trunk/PLCWWW.spec $
 
 %define name nodeconfig
-%define version 4.2
+%define version 5.0
 %define taglevel 1
 
 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
@@ -26,7 +26,9 @@ URL: %(echo %{url} | cut -d ' ' -f 2)
 
 # We use set everywhere
 Requires: php >= 5.0
-Requires: PLCAPI >= 4.0
+Requires: PLCAPI >= 5.0
+# need the apache user at install-time
+Requires: httpd 
 
 %description
 
@@ -40,22 +42,80 @@ reasons these scripts get installed in /var/www/html/PlanetLabConf.
 %setup -q
 
 %build
-echo "There is no build stage for this component."
-echo "All files just need to be installed as is from the codebase."
+pushd nodeconfig/yum
+
+KEXCLUDE="exclude=$(../../build/getkexcludes.sh)"
+
+# expand list of kexcludes
+for filein in $(find . -name '*.in') ; do
+    file=$(echo $filein | sed -e "s,\.in$,,")
+    sed -e "s,@KEXCLUDE@,$KEXCLUDE,g" $filein > $file
+done
+
+# scan fcdistros and catenate all repos in 'stock.repo' so db-config can be distro-independant
+
+for fcdistro in $(ls); do
+    [ -d $fcdistro ] || continue
+    pushd $fcdistro/yum.myplc.d
+    rm -f stock.repo
+    cat *.repo > stock.repo
+    popd
+done
+
+popd
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
+pushd nodeconfig
+
 echo "* nodeconfig: Installing PlanetLabConf pages"
 
-mkdir -p $RPM_BUILD_ROOT/var/www/html/PlanetLabConf
-# let's be conservative and exclude codebase files, though there should not be any
-rsync -a --exclude \*.spec --exclude .svn --exclude CVS ./ $RPM_BUILD_ROOT/var/www/html/PlanetLabConf
+for dir in boot PlanetLabConf PLCAPI ; do
+    mkdir -p $RPM_BUILD_ROOT/var/www/html/$dir
+    rsync -a --exclude .svn ./$dir/ $RPM_BUILD_ROOT/var/www/html/$dir/
+done
+
+# the yum area -- se db-config
+# expose (fixed) myplc.repo.php as                                         https://<plc>/yum/myplc.repo.php
+install -D -m 644 ./yum/myplc.repo.php                      $RPM_BUILD_ROOT/var/www/html/yum/myplc.repo.php
+# expose the fcdistro-dependant yum.conf as                                https://<plc>/yum/yum.conf
+install -D -m 644 ./yum/%{distroname}/yum.conf              $RPM_BUILD_ROOT/var/www/html/yum/yum.conf
+# expose the (fcdistro-dependant) stock.repo as                                    https://<plc>/yum/stock.repo
+install -D -m 644 ./yum/%{distroname}/yum.myplc.d/stock.repo $RPM_BUILD_ROOT/var/www/html/yum/stock.repo
+
+popd
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%post
+# the boot manager upload area
+mkdir -p /var/log/bm
+chown apache:apache /var/log/bm
+chmod 700 /var/log/bm
+
 %files
 %defattr(-,root,root,-)
+/var/www/html/boot
 /var/www/html/PlanetLabConf
+/var/www/html/PLCAPI
+/var/www/html/yum
+
+%changelog
+* Wed Sep 10 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - nodeconfig-5.0-1
+- reflects new names from the data model
+
+* Tue Apr 22 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - nodeconfig-4.2-4
+- keys.php know about monitor
+- new sudoers.php script
+
+* Thu Apr 03 2008 Faiyaz Ahmed <faiyaza@cs.princeton.edu> - nodeconfig-4.2-2 nodeconfig-4.2-3
+- Added support for centralized PlanetFlow.
+
+* Wed Mar 26 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - nodeconfig-4.2-1 nodeconfig-4.2-2
+- integrated /var/www/html/{boot,PLCAPI} from PLCWWW
+- former content has moved down into PlanetLabConf
+
 
+%define module_current_branch 4.2