--- rpms/plague/sme7/plague.spec 2007/06/12 17:06:23 1.1 +++ rpms/plague/sme7/plague.spec 2011/04/09 16:06:17 1.3 @@ -2,20 +2,33 @@ BuildArch: noarch Summary: Distributed build system for RPMs Name: plague -Version: 0.5.0 -Release: 0.1.%{?CVSDATE}cvs%{?dist} -License: GPL +Version: 0.4.5.8 +Release: 2%{?dist} +License: GPLv2+ Group: Development/Tools -Source: http://fedoraproject.org/projects/plague/releases/%{name}-%{version}.tar.bz2 +#Source: http://fedoraproject.org/projects/plague/releases/%{name}-%{version}.tar.bz2 +Source: %{name}-%{version}.tar.bz2 +Patch0: plague-0.4.5.8-pushscript-extras.patch +Patch1: plague-0.4.5.8-keepjobs.patch +Patch2: plague-0.4.5.8-scm-updates.patch URL: http://www.fedoraproject.org/wiki/Projects/Plague BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -Requires: python-sqlite, createrepo +BuildRequires: python +Requires: createrepo >= 0.4.7 +# get the version of the sqlite api thats available to us +%if 0%{?rhel} +Requires: python-sqlite +%else +Requires: python-sqlite2 +%endif + Requires: %{name}-common = %{version}-%{release} Requires(post): /sbin/chkconfig Requires(post): /sbin/service Requires(preun): /sbin/chkconfig Requires(preun): /sbin/service + %description The Plague build system is a client/server distributed build system for building RPM packages. This package provides the plague server. @@ -27,14 +40,16 @@ Group: Development/Tools Requires: pyOpenSSL %description common -This package includes the common Python module that all Plague services require. +This package includes the common Python module that all Plague services +require. %package builder Summary: Builder daemon for Plague builder slaves Group: Development/Tools Requires: %{name}-common = %{version}-%{release} -Requires: yum >= 2.2.1, mock >= 0.3 +Requires: yum >= 2.2.1 +Requires: mock >= 0.8 Requires(post): /sbin/chkconfig Requires(post): /sbin/service Requires(preun): /sbin/chkconfig @@ -50,13 +65,15 @@ Group: Development/Tools Requires: %{name}-common = %{version}-%{release} %description client -Client program for enqueueing package builds and interrogating the build system. +Client program for enqueueing package builds and interrogating the build +system. %package utils Summary: Utility programs for the Plague build system Group: Development/Tools Requires: %{name}-common = %{version}-%{release} +Requires: %{name} = %{version}-%{release} %description utils This package includes user utilities for the Plague build system, including @@ -65,6 +82,10 @@ the interface to the build server. %prep %setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 + %build make @@ -72,12 +93,13 @@ make %install rm -rf $RPM_BUILD_ROOT -make DESTDIR=$RPM_BUILD_ROOT install -install -D -m 0644 etc/plague-builder.config $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name}-builder -install -D -m 0755 etc/plague-builder.init $RPM_BUILD_ROOT%{_initrddir}/%{name}-builder -install -D -m 0644 etc/plague-server.config $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name}-server -install -D -m 0755 etc/plague-server.init $RPM_BUILD_ROOT%{_initrddir}/%{name}-server -mkdir -p $RPM_BUILD_ROOT/srv/plague_builder +make DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p" install +chmod +x $RPM_BUILD_ROOT%{_bindir}/* +install -p -D -m 0644 etc/plague-builder.config $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name}-builder +install -p -D -m 0755 etc/plague-builder.init $RPM_BUILD_ROOT%{_initrddir}/%{name}-builder +install -p -D -m 0644 etc/plague-server.config $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name}-server +install -p -D -m 0755 etc/plague-server.init $RPM_BUILD_ROOT%{_initrddir}/%{name}-server +mkdir -p $RPM_BUILD_ROOT/var/lib/plague/builder %clean @@ -95,7 +117,7 @@ if [ $1 = 0 ]; then fi %pre builder -/usr/sbin/useradd -G mock -s /sbin/nologin -M -r -d /srv/plague_builder plague-builder 2>/dev/null || : +/usr/sbin/useradd -G mock -s /sbin/nologin -M -r -d /var/lib/plague/builder plague-builder 2>/dev/null || : %post builder /sbin/chkconfig --add plague-builder @@ -109,7 +131,6 @@ fi %files %defattr(-, root, root) -%doc README ChangeLog %{_bindir}/%{name}-server %dir %{_datadir}/%{name}/server %{_datadir}/%{name}/server/*.py* @@ -117,10 +138,15 @@ fi %dir %{_sysconfdir}/%{name}/server/certs %config(noreplace) %{_sysconfdir}/sysconfig/%{name}-server %{_initrddir}/%{name}-server +%doc www %files common %defattr(-, root, root) -/usr/lib/python?.?/site-packages/plague/*.py* +%doc README ChangeLog +%dir %{_sysconfdir}/%{name} +%dir %{_datadir}/%{name} +%dir /usr/lib/python?.?/site-packages/%{name} +/usr/lib/python?.?/site-packages/%{name}/*.py* %files builder %defattr(-, root, root) @@ -131,7 +157,8 @@ fi %dir %{_sysconfdir}/%{name}/builder/certs %config(noreplace) %{_sysconfdir}/sysconfig/%{name}-builder %{_initrddir}/%{name}-builder -%attr(0755, plague-builder, plague-builder) /srv/plague_builder +%dir /var/lib/plague +%attr(0755, plague-builder, plague-builder) /var/lib/plague/builder %files client %defattr(-, root, root) @@ -139,11 +166,137 @@ fi %files utils %defattr(-, root, root) -%{_bindir}/%{name}-user-manager.py* -%{_bindir}/%{name}-certhelper.py* +%{_bindir}/%{name}-user-manager +%{_bindir}/%{name}-certhelper %changelog +* Sat Apr 9 2011 Shad L. Lords - 0.4.5.8-2 +- Apply patches to detect pushed packages, keep packages around, add git as a checkout method + +* Sat Apr 9 2011 Shad L. Lords - 0.4.5.8-1 +- Update to 0.4.5.8 + +* Wed May 5 2010 Michael Schwendt - 0.4.5.7-7.20100505cvs +- patch with fix from cvs (file download with Mock createrepo_on_rpms). + +* Sun Jul 26 2009 Fedora Release Engineering - 0.4.5.7-6.20090612cvs +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Fri Jul 17 2009 Michael Schwendt - 0.4.5.7-5.20090612cvs +- patch with fix from cvs (SSLConnection.py shutdown) + +* Thu Feb 26 2009 Fedora Release Engineering - 0.4.5.7-4.20081216cvs +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Dec 16 2008 Michael Schwendt - 0.4.5.7-3.20081216cvs +- patch with fixes from cvs, also to make work with Python 2.6 + +* Sat Nov 29 2008 Ignacio Vazquez-Abrams - 0.4.5.7-2 +- Rebuild for Python 2.6 + +* Wed Nov 5 2008 Michael Schwendt - 0.4.5.7-1 +- update to 0.4.5.7 (Python 2.4 fix and optional POSIX lockfile support) + +* Sun Sep 21 2008 Michael Schwendt - 0.4.5.6-1 +- update to 0.4.5.6 + +* Sat Sep 20 2008 Michael Schwendt - 0.4.5.5-2 +- add fix for sqlite's limited ALTER TABLE + +* Mon Sep 8 2008 Michael Schwendt - 0.4.5.5-1 +- update to 0.4.5.5 + +* Sun Sep 07 2008 Michael Schwendt - 0.4.5.4-1 +- update to 0.4.5.4 to make it work with MySQL 5 + +* Sun Sep 7 2008 Michael Schwendt - 0.4.5.3-2 +- fix mod_user in plague-user-manager for sqlite2/3 + +* Fri Sep 5 2008 Michael Schwendt - 0.4.5.3-1 +- update to 0.4.5.3 for sqlite2 compatibility fixes for Fedora +- merge fedora pkg spec changes +- include the www tree as server pkg docs + +* Thu Sep 04 2008 Dennis Gilmore - 0.4.5.2-1 +- fix bug in find option to plague-user-manager + +* Wed Sep 03 2008 Dennis Gilmore - 0.4.5.1-1 +- update to 0.4.5.1 applying Michael schwendt's logging and mock patches +- using pysqlite2 on fedora and python-sqlite on RHEL +- requires mock > 0.8 +- requires createrepo >= 0.4.7 + +* Wed Sep 3 2008 Michael Schwendt - 0.4.5-2 +- add the patches from 0.4.5-0.4 (sqlite3, mock08, logtail) +- merge more spec changes + +* Tue Sep 02 2008 Dennis Gilmore - 0.4.5-1 +- update to 0.4.5 lots of fixes + +* Thu May 22 2008 Seth Vidal - 0.4.4.1-6 +- licensing tag fix + +* Tue Sep 18 2007 Michael Schwendt - 0.4.4.1-5 +- Add dirs /etc/plague and /usr/share/plague to plague-common + since "plague-builder" and "plague" use them (#233904). + +* Fri Dec 15 2006 Toshio Kuratomi - 0.4.4.1-4 +- Small fix for a change in python 2.5's xmlrpc library. The patch has been + upstreamed. + +* Thu Dec 14 2006 Jason L Tibbitts III - 0.4.4.1-3 +- Rebuild for new Python + +* Thu Sep 14 2006 Dennis Gilmore 0.4.4.0-2 +- add patch for bad umask setting + +* Mon Mar 13 2006 Dan Williams 0.4.4.1-1 +- Update to 0.4.4.1 +- Fix createrepo dep to >= 0.4.3 (#rh170531) + +* Sun Mar 12 2006 Dan Williams 0.4.4-1 +- Update to 0.4.4 release + - Don't use pyOpenSSL's sendall() call, but simulate it to achieve + timeouts, better error handling, and more efficient CPU usage + - Fix up initscripts and lifecycle management + - Implement a TERM handler in server & builder for clean shutdown + - Ensure jobs don't hang around on builders if they get left there for + some reason (ie, server didn't unlock repo for the job) + - Make Additional Package Arches really work (kmod support) +- Own /usr/lib/python?.?/site-packages/plague (#rh172794#) +- Require createrepo >= 4.3 (#rh170531#) + +* Tue Jan 24 2006 Dan Williams 0.4.3-6 +- Increase build server builder thread sleep time to work around SSL issues +- Spawn mock in a new process group, and when killing jobs kill the entire + process group. Hopefully fix orphaned rpmbuild processes on job kill + +* Mon Jan 23 2006 Dan Williams 0.4.3-5 +- Restore builder connection timeout + +* Mon Jan 23 2006 Dan Williams 0.4.3-4 +- Revert SSL fixes from last build + +* Sun Jan 22 2006 Dan Williams 0.4.3-3 +- Don't traceback when killing jobs on builders +- Work around SSL hanging issues + +* Tue Nov 29 2005 Dan Williams 0.4.3-2 +- Move README and ChangeLog to -common package +- Traceback/debug functionality added in server, depends on + threadframe module from elsewhere. Disabled by default. + +* Thu Nov 24 2005 Dan Williams 0.4.3-1 +- Add socket timeouts for fileserver and xmlrpc bits + +* Fri Nov 18 2005 Dan Williams 0.4.2-7 +- Suspend builders on hard errors such as running out of disk space +- Retry downloads from server/builder 5 times, not 3 +- Log retried downloads on the server +- Add socket timeouts to downloads to work around hanging issues + when downloading from the builder (the downloading/done issue) + * Tue Nov 15 2005 Dan Williams 0.4.2-5 - Log kill requests on the server @@ -251,7 +404,7 @@ fi * Sat Jul 16 2005 Dan Williams - Bump version to 0.2 -- Grab python files from /usr/lib, not %{_libdir} until the +- Grab python files from /usr/lib, not %%{_libdir} until the multiarch issues get worked out * Sun Jun 26 2005 Dan Williams