move easy_install calls back to post install.
[monitor.git] / Monitor.spec
index 61a2ca7..d3bac18 100644 (file)
@@ -25,10 +25,6 @@ Packager: PlanetLab Central <support@planet-lab.org>
 Distribution: PlanetLab %{plrelease}
 URL: %(echo %{url} | cut -d ' ' -f 2)
 
-# this is only required for fedora and we have this in devel.pkgs for
-# all fedora builds.
-# BuildRequires: python-setuptools-devel
-
 
 Summary: Monitor account initialization for the root image.
 Group: Applications/System
@@ -58,6 +54,7 @@ Summary: Monitor hooks for the PLC server.
 Group: Applications/System
 
 Requires: python
+Requires: python-setuptools-devel
 Requires: python-peak-util-extremes
 
 Requires: compat-libstdc++-296
@@ -88,6 +85,7 @@ Requires: python
 Requires: monitor-server-deps
 Requires: PLCWWW >= 4.2
 Requires: bootcd-%{pldistro}-%{_arch} >= 4.2
+Requires: pcucontrol
 
 %description server
 The server side include all python modules and scripts needed to fully
@@ -108,14 +106,6 @@ mode to actively report the observed runlevel to PLC and update the
 %prep
 %setup -q
 
-%build
-# NOTE: the build uses g++ cmdamt/
-# NOTE: TMPDIR is needed here b/c the tmpfs of the build vserver is too small.
-cd pcucontrol/models/intelamt
-export TMPDIR=$PWD/tmp
-make
-cd ..
-
 %install
 rm -rf $RPM_BUILD_ROOT
 #################### CLIENT 
@@ -134,14 +124,6 @@ install -d $RPM_BUILD_ROOT/var/www/html/monitorlog/
 install -d $RPM_BUILD_ROOT/etc/httpd/conf.d/
 install -d $RPM_BUILD_ROOT/%{python_sitearch}/monitor
 
-# pack monitor's dependencies in RPM to make it easier to deploy.
-export TMPDIR=/var/tmp/
-export PYTHONPATH=$PYTHONPATH:$RPM_BUILD_ROOT/%{python_sitearch}/
-easy_install -d $RPM_BUILD_ROOT/%{python_sitearch}/ -UZ http://files.turbogears.org/eggs/TurboGears-1.0.7-py2.5.egg
-easy_install -d $RPM_BUILD_ROOT/%{python_sitearch}/ -UZ http://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-0.5.3.tar.gz
-easy_install -d $RPM_BUILD_ROOT/%{python_sitearch}/ -UZ Elixir
-rm -rf $RPM_BUILD_ROOT/%{python_sitearch}/site.py*
-
 # plc.d scripts
 install -D -m 644 monitor.functions $RPM_BUILD_ROOT/%{_sysconfdir}/plc.d/monitor.functions
 install -D -m 755 monitor-server.init $RPM_BUILD_ROOT/%{_sysconfdir}/plc.d/monitor
@@ -153,19 +135,15 @@ install -D -m 644 monitor-server.cron $RPM_BUILD_ROOT/%{_sysconfdir}/cron.d/moni
 # apache configuration
 install -D -m 644 web/monitorweb-httpd.conf $RPM_BUILD_ROOT/etc/httpd/conf.d/
 
-# we'll install monitor and pcucontrol in site-packages
-# install rest to /usr/share/monitor
+# we'll install monitor in site-packages install rest to
+# /usr/share/monitor
 rsync -a --exclude archive-pdb --exclude .svn --exclude CVS  \
     --exclude monitor/ \
-    --exclude pcucontol/ \
     ./  $RPM_BUILD_ROOT/usr/share/%{name}/
 
 # install monitor python package
 rsync -a --exclude .svn  ./monitor/   $RPM_BUILD_ROOT/%{python_sitearch}/monitor/
 
-# and pcucontrol
-rsync -a --exclude .svn  ./pcucontrol/    $RPM_BUILD_ROOT/%{python_sitearch}/pcucontrol/
-
 # install third-party module to site-packages
 install -D -m 755 threadpool.py $RPM_BUILD_ROOT/%{python_sitearch}/threadpool.py
 
@@ -217,6 +195,17 @@ rm -rf $RPM_BUILD_ROOT
 /%{_initrddir}/monitor-runlevelagent
 
 %post server-deps
+#
+# TODO: depend on distribution packages where feasible.
+#
+#  it would be better to be able to depend on the distribution's
+# packages for these additional python modules, but packages provided
+# by fedora 8 (our current deployment) doesn't match the version
+# requirements.
+export TMPDIR=/var/tmp/
+easy_install -UZ http://files.turbogears.org/eggs/TurboGears-1.0.7-py2.5.egg
+easy_install -UZ http://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-0.5.3.tar.gz
+easy_install -UZ Elixir
 
 # crazy openssl libs for racadm binary
 ln -s /lib/libssl.so.0.9.8b /usr/lib/libssl.so.2