-#
-# $Id$
-#
-%define url $URL$
-
%define name myplc
-%define version 4.3
-%define taglevel 37
+%define version 5.1
+%define taglevel 0
%define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
%global python_sitearch %( python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)" )
Vendor: PlanetLab
Packager: PlanetLab Central <support@planet-lab.org>
Distribution: PlanetLab %{plrelease}
-URL: %(echo %{url} | cut -d ' ' -f 2)
-
+URL: %{SCMURL}
+%define nodefamily %{pldistro}-%{distroname}-%{_arch}
####################### myplc
Summary: PlanetLab Central (PLC) Portable Installation
Group: Applications/Systems
# as much as possible, requires should go in the subpackages specfile
+Requires: redhat-lsb
Requires: bzip2
Requires: tar
Requires: less
Requires: findutils
Requires: xmlsec1
Requires: xmlsec1-openssl
+Requires: ed
%if "%{distro}" == "Fedora" && %{distrorelease} >= 10
Requires: cronie
%else
%endif
# planetlab stuff
Requires: bootmanager
-Requires: bootcd-%{pldistro}-%{_arch}
+Requires: bootcd-%{nodefamily}
Requires: bootcd-initscripts
Requires: PLCWWW
Requires: www-register-wizard
Requires: nodeconfig
+Requires: nodeyum
Requires: PLCAPI
-Requires: bootstrapfs-%{pldistro}-%{_arch}
+Requires: nodeimage-%{nodefamily}
Requires: myplc-docs
Requires: myplc-release
Requires: myplc-config
%define debug_package %{nil}
-%description
-MyPLC is a complete PlanetLab Central (PLC) portable installation
-contained within a chroot jail. The default installation consists of a
-web server, an XML-RPC API server, a boot server, and a database
-server: the core components of PLC. The installation may be customized
-through a graphical interface. All PLC services are started up and
-shut down through a single System V init script installed in the host
-system.
+%description
+MyPLC is a complete PlanetLab Central (PLC) portable installation.
+The default installation consists of a web server, an XML-RPC API
+server, a boot server, and a database server: the core components of
+PLC. The installation may be customized through a graphical
+interface. All PLC services are started up and shut down through a
+single System V init script.
####################### myplc-config
# Install initscript
echo "* Installing plc initscript"
install -D -m 755 plc.init ${RPM_BUILD_ROOT}/etc/init.d/plc
+install -D -m 644 plc.service ${RPM_BUILD_ROOT}/lib/systemd/system/plc.service
# Install initscripts
echo "* Installing plc.d initscripts"
# Install configuration file
echo "* myplc: Installing configuration file"
-install -D -m 444 default_config.xml ${RPM_BUILD_ROOT}/etc/planetlab/default_config.xml
install -D -m 444 plc_config.dtd ${RPM_BUILD_ROOT}/etc/planetlab/plc_config.dtd
+sed -e "s,@PLDISTRO@,%{pldistro},g" -e "s,@FCDISTRO@,%{distroname},g" -e "s,@ARCH@,%{_arch},g" \
+ default_config.xml > ${RPM_BUILD_ROOT}/etc/planetlab/default_config.xml
+chmod 444 ${RPM_BUILD_ROOT}/etc/planetlab/default_config.xml
echo "* Installing bashrc convenience"
install -D -m 644 bashrc ${RPM_BUILD_ROOT}/usr/share/myplc/bashrc
/etc/planetlab
/etc/plc_sliceinitscripts
/etc/support-scripts
-/usr/bin/
/usr/share/myplc/bashrc
+# keep a detailed list, to avoid duplicate of plc-config,
+# that belongs to the myplc-config rpm
+/usr/bin/plc-config-tty
+/usr/bin/db-config
+/usr/bin/dns-config
+/usr/bin/refresh-peer.py*
+/usr/bin/mtail.py*
+/usr/bin/plc-map.py*
+/usr/bin/plc-kml.py*
+/usr/bin/clean-empty-dirs.py*
+/usr/bin/plc-check-ssl-peering.py*
+/usr/bin/plc-orphan-accounts.py*
+/usr/bin/spot-aliens.py*
+/usr/bin/spot-dup-accounts.sh
+/lib/systemd/system/plc.service
%files config
%defattr(-,root,root,-)
%changelog
+* Mon Sep 26 2011 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-19
+- new maintenance/monitoring script spot-aliens to look for glitches in refreshpeer+sfa
+
+* Tue Jun 07 2011 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-18
+- new settings for myslice (comon&tophat) and monitor (db)
+- removed mentions of chroot in description
+- can redo myplc-docs on broken f12-latex
+- set short_open_tag in php.ini
+- fixes in gen-sites-xml (is that still used ?)
+- partial-repo.sh has moved to 'build' where it more belongs
+- tweaks in convenience tool 'mtail'
+
+* Tue Mar 22 2011 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-17
+- fixed changelog, no change from 5.0-16
+
+* Mon Mar 21 2011 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-16
+- requires ed for the plc.d/packages step
+- sirius initscript to handle stop and restart
+
+* Fri Feb 04 2011 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-15
+- ignore steps in db-config.d if they have a '.' or '~' in their name
+
+* Wed Jan 26 2011 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-14
+- can redo myplc-docs without the doc for monitor
+
+* Mon Jan 24 2011 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-13
+- no semantic change - just fixed specfile for git URL
+
+* Wed Dec 01 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-12
+- needed for plcapi-5.0-19, i.e. tag permissions based on roles
+
+* Mon Oct 04 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - myplc-5.0-11
+- add missing files to rpm package
+
+* Mon Oct 04 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-10
+- mtail.py -s for SFA
+- spot-aliesm.py is a utility script for sanity checks of the PLC db when running refreshpeer+sfa
+
+* Thu Jul 15 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-9
+- avoid duplication of the plc-config binary in both myplc and myplc-config rpms
+
+* Mon Jul 12 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - myplc-5.0-8
+- plc-config-tty now has a validator on booleans
+- e.g. entering 'True' now is rejected rather than silently recording 'false'
+
+* Tue Jul 06 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - MyPLC-5.0-7
+- disable mod_wsgi
+
+* Mon Jul 05 2010 Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - MyPLC-5.0-6
+- module name changes
+- start wsgi support
+
+* Tue Jun 22 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - MyPLC-5.0-5
+- new setting PLC_RESERVATION_GRANULARITY
+
+* Wed May 12 2010 Talip Baris Metin <Talip-Baris.Metin@sophia.inria.fr> - MyPLC-5.0-4
+- * partial-repo.sh script
+- * preserve key along with certificates
+
+* Fri Apr 02 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - MyPLC-5.0-3
+- set date.timezone to GMT if not set in php.ini for php-5.3 / fedora12
+
+* Fri Mar 12 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - MyPLC-5.0-2
+- legacy scripts gen-sites-xml & gen-static-content back in (sigh)
+- new OMF category in the config
+- create the drl system slice
+
+* Fri Jan 29 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - MyPLC-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 PLC_FLAVOUR config category
+- reviewed module layout
+- cleaned up old chroot-related build stuff (does not need the build module when building anymore)
+
* Sat Jan 09 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - MyPLC-4.3-37
- support for fedora 12
- new package myplc-config for use by sfa
* Fri Aug 31 2007 Marc E. Fiuczynski <mef@CS.Princeton.EDU>
- initial build.
-%define module_current_branch 4.2
+%define module_current_branch 4.3