/[smecontribs]/rpms/plague/contribs8/plague.spec
ViewVC logotype

Contents of /rpms/plague/contribs8/plague.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.2 - (show annotations) (download)
Wed Apr 2 15:12:56 2008 UTC (16 years, 7 months ago) by slords
Branch: MAIN
Changes since 1.1: +4 -0 lines
Add Id, Authority, Name

1 # $Id$
2 # # Authority: slords
3 # Name: Shad L. Lords
4
5 BuildArch: noarch
6
7 Summary: Distributed build system for RPMs
8 Name: plague
9 Version: 0.4.4.1
10 Release: 10%{?dist}
11 License: GPL
12 Group: Development/Tools
13 Source: http://fedoraproject.org/projects/plague/releases/%{name}-%{version}.tar.bz2
14 URL: http://www.fedoraproject.org/wiki/Projects/Plague
15 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
16 Requires: createrepo >= 0.4.3
17 Requires: %{name}-common = %{version}-%{release}
18 Requires(post): /sbin/chkconfig
19 Requires(post): /sbin/service
20 Requires(preun): /sbin/chkconfig
21 Requires(preun): /sbin/service
22
23 Patch0: plague-0.4-daemonize.patch
24 Patch1: plague-0.4-py25.patch
25 Patch2: plague-0.4.4.1-authed.patch
26 Patch3: plague-0.4.4.1-srpm-umask.patch
27 Patch4: plague-0.4.4.1-etc.patch
28 Patch5: plague-0.4.4.1-pause.patch
29 Patch6: plague-0.4.4.1-racecondition.patch
30 Patch7: plague-0.4.4.1-preperrormsg.patch
31 Patch8: plague-0.4.4.1-kill.patch
32 Patch9: plague-0.4.4.1-mock-0.8.patch
33 Patch10: plague-0.4.4.1-update-builders.patch
34 Patch11: plague-0.4.4.1-filedownloader.patch
35 Patch12: plague-0.4.4.1-faster-downloads.patch
36 Patch13: plague-0.4.4.1-buildsys-fixes.patch
37 Patch14: plague-0.4.4.1-repolock.patch
38 Patch15: plague-0.4.4.1-repoadd.patch
39 Patch100: plague-0.4.4.1-pushscript-extras.patch
40
41
42 %description
43 The Plague build system is a client/server distributed build system for
44 building RPM packages. This package provides the plague server.
45
46
47 %package common
48 Summary: Common resources for the Plague build system
49 Group: Development/Tools
50 Requires: pyOpenSSL
51
52 %description common
53 This package includes the common Python module that all Plague services require.
54
55
56 %package builder
57 Summary: Builder daemon for Plague builder slaves
58 Group: Development/Tools
59 Requires: %{name}-common = %{version}-%{release}
60 Requires: yum >= 2.2.1, mock >= 0.8
61 Requires(post): /sbin/chkconfig
62 Requires(post): /sbin/service
63 Requires(preun): /sbin/chkconfig
64 Requires(preun): /sbin/service
65 Requires(pre): /usr/sbin/useradd
66
67 %description builder
68 The Plague builder does the actual RPM package building on slave machines.
69
70 %package client
71 Summary: Package queueing client for the Plague build system
72 Group: Development/Tools
73 Requires: %{name}-common = %{version}-%{release}
74
75 %description client
76 Client program for enqueueing package builds and interrogating the build system.
77
78
79 %package utils
80 Summary: Utility programs for the Plague build system
81 Group: Development/Tools
82 Requires: %{name}-common = %{version}-%{release}
83
84 %description utils
85 This package includes user utilities for the Plague build system, including
86 the interface to the build server.
87
88
89 %prep
90 %setup -q
91 %patch0 -p0 -b .umask
92 %patch1 -p1 -b .py25
93 %patch2 -p1 -b .authed
94 %patch3 -p1 -b .srpm-umask
95 %patch4 -p1 -b .etc
96 %patch5 -p1 -b .pause
97 %patch6 -p1 -b .racecondition
98 %patch7 -p1 -b .preperrormsg
99 %patch8 -p1 -b .kill
100 %patch9 -p1 -b .mock8
101 %patch10 -p1 -b .update-builders
102 %patch11 -p1 -b .filedownloader
103 %patch12 -p1 -b .faster-downloads
104 %patch13 -p1 -b .buildsys-fixes
105 %patch14 -p1 -b .repolock
106 %patch15 -p1 -b .repoadd
107 %patch100 -p1 -b .pushscript-extras
108
109
110 %build
111 make
112
113
114 %install
115 rm -rf $RPM_BUILD_ROOT
116 make DESTDIR=$RPM_BUILD_ROOT install
117 install -D -m 0644 etc/plague-builder.config $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name}-builder
118 install -D -m 0755 etc/plague-builder.init $RPM_BUILD_ROOT%{_initrddir}/%{name}-builder
119 install -D -m 0644 etc/plague-server.config $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/%{name}-server
120 install -D -m 0755 etc/plague-server.init $RPM_BUILD_ROOT%{_initrddir}/%{name}-server
121 mkdir -p $RPM_BUILD_ROOT/srv/plague_builder
122
123
124 %clean
125 rm -rf $RPM_BUILD_ROOT
126
127
128 %post
129 /sbin/chkconfig --add plague-server
130 /sbin/service plague-server condrestart >> /dev/null || :
131
132 %preun
133 if [ $1 = 0 ]; then
134 /sbin/service plague-server stop &> /dev/null
135 /sbin/chkconfig --del plague-server
136 fi
137
138 %pre builder
139 /usr/sbin/useradd -G mock -s /sbin/nologin -M -r -d /srv/plague_builder plague-builder 2>/dev/null || :
140
141 %post builder
142 /sbin/chkconfig --add plague-builder
143 /sbin/service plague-builder condrestart >> /dev/null || :
144
145 %preun builder
146 if [ $1 = 0 ]; then
147 /sbin/service plague-builder stop &> /dev/null
148 /sbin/chkconfig --del plague-builder
149 fi
150
151 %files
152 %defattr(-, root, root)
153 %{_bindir}/%{name}-server
154 %dir %{_datadir}/%{name}/server
155 %{_datadir}/%{name}/server/*.py*
156 %dir %{_sysconfdir}/%{name}/server
157 %dir %{_sysconfdir}/%{name}/server/certs
158 %config(noreplace) %{_sysconfdir}/sysconfig/%{name}-server
159 %{_initrddir}/%{name}-server
160
161 %files common
162 %defattr(-, root, root)
163 %doc README ChangeLog
164 %dir %{_sysconfdir}/%{name}
165 %dir %{_datadir}/%{name}
166 %dir /usr/lib/python?.?/site-packages/%{name}
167 /usr/lib/python?.?/site-packages/%{name}/*.py*
168
169 %files builder
170 %defattr(-, root, root)
171 %{_bindir}/%{name}-builder
172 %dir %{_datadir}/%{name}/builder
173 %{_datadir}/%{name}/builder/*.py*
174 %dir %{_sysconfdir}/%{name}/builder
175 %dir %{_sysconfdir}/%{name}/builder/certs
176 %config(noreplace) %{_sysconfdir}/sysconfig/%{name}-builder
177 %{_initrddir}/%{name}-builder
178 %attr(0755, plague-builder, plague-builder) /srv/plague_builder
179
180 %files client
181 %defattr(-, root, root)
182 %{_bindir}/%{name}-client
183
184 %files utils
185 %defattr(-, root, root)
186 %{_bindir}/%{name}-user-manager.py*
187 %{_bindir}/%{name}-certhelper.py*
188
189
190 %changelog
191 * Fri Jan 18 2008 Michael Schwendt <mschwendt@users.sf.net> - 0.4.4.1-10.el5
192 - Patch add_to_repo stage.
193
194 * Wed Jan 9 2008 Michael Schwendt <mschwendt@users.sf.net> - 0.4.4.1-9.el5
195 - Updated etc/ patch.
196
197 * Sat Jan 5 2008 Michael Schwendt <mschwendt@users.sf.net> - 0.4.4.1-8.el5
198 - Add patches: repolock, filedownloader, faster downloads
199 - Merged post-0.4.4.1 patches from buildsys.fedoraproject.org server
200 - Merge the jobs db cleanup (in this form it is specific to Extras/EPEL
201 buildsys and disables the "finish" command)
202
203 * Wed Dec 26 2007 Michael Schwendt <mschwendt@users.sf.net> - 0.4.4.1-7.el5
204 - Fix update_builders command for non-admin users.
205
206 * Wed Nov 14 2007 Michael Schwendt <mschwendt@users.sf.net> - 0.4.4.1-6.el5
207 - Add patches for bug-fixes and mock 0.8 support.
208
209 * Tue Sep 18 2007 Michael Schwendt <mschwendt@users.sf.net> - 0.4.4.1-5
210 - Add dirs /etc/plague and /usr/share/plague to plague-common
211 since "plague-builder" and "plague" use them (#233904).
212
213 * Fri Dec 15 2006 Toshio Kuratomi <toshio@tiki-lounge.com> - 0.4.4.1-4
214 - Small fix for a change in python 2.5's xmlrpc library. The patch has been
215 upstreamed.
216
217 * Thu Dec 14 2006 Jason L Tibbitts III <tibbs@math.uh.edu> - 0.4.4.1-3
218 - Rebuild for new Python
219
220 * Thu Sep 14 2006 Dennis Gilmore <dennis@ausil.us> 0.4.4.0-2
221 - add patch for bad umask setting
222
223 * Mon Mar 13 2006 Dan Williams <dcbw@redhat.com> 0.4.4.1-1
224 - Update to 0.4.4.1
225 - Fix createrepo dep to >= 0.4.3 (#rh170531)
226
227 * Sun Mar 12 2006 Dan Williams <dcbw@redhat.com> 0.4.4-1
228 - Update to 0.4.4 release
229 - Don't use pyOpenSSL's sendall() call, but simulate it to achieve
230 timeouts, better error handling, and more efficient CPU usage
231 - Fix up initscripts and lifecycle management
232 - Implement a TERM handler in server & builder for clean shutdown
233 - Ensure jobs don't hang around on builders if they get left there for
234 some reason (ie, server didn't unlock repo for the job)
235 - Make Additional Package Arches really work (kmod support)
236 - Own /usr/lib/python?.?/site-packages/plague (#rh172794#)
237 - Require createrepo >= 4.3 (#rh170531#)
238
239 * Tue Jan 24 2006 Dan Williams <dcbw@redhat.com> 0.4.3-6
240 - Increase build server builder thread sleep time to work around SSL issues
241 - Spawn mock in a new process group, and when killing jobs kill the entire
242 process group. Hopefully fix orphaned rpmbuild processes on job kill
243
244 * Mon Jan 23 2006 Dan Williams <dcbw@redhat.com> 0.4.3-5
245 - Restore builder connection timeout
246
247 * Mon Jan 23 2006 Dan Williams <dcbw@redhat.com> 0.4.3-4
248 - Revert SSL fixes from last build
249
250 * Sun Jan 22 2006 Dan Williams <dcbw@redhat.com> 0.4.3-3
251 - Don't traceback when killing jobs on builders
252 - Work around SSL hanging issues
253
254 * Tue Nov 29 2005 Dan Williams <dcbw@redhat.com> 0.4.3-2
255 - Move README and ChangeLog to -common package
256 - Traceback/debug functionality added in server, depends on
257 threadframe module from elsewhere. Disabled by default.
258
259 * Thu Nov 24 2005 Dan Williams <dcbw@redhat.com> 0.4.3-1
260 - Add socket timeouts for fileserver and xmlrpc bits
261
262 * Fri Nov 18 2005 Dan Williams <dcbw@redhat.com> 0.4.2-7
263 - Suspend builders on hard errors such as running out of disk space
264 - Retry downloads from server/builder 5 times, not 3
265 - Log retried downloads on the server
266 - Add socket timeouts to downloads to work around hanging issues
267 when downloading from the builder (the downloading/done issue)
268
269 * Tue Nov 15 2005 Dan Williams <dcbw@redhat.com> 0.4.2-5
270 - Log kill requests on the server
271
272 * Mon Nov 14 2005 Dan Williams <dcbw@redhat.com> 0.4.2-4
273 - In the builder, close files we open before exec-ing the
274 child process. Fixes massive file descriptor leaks.
275
276 * Sun Nov 13 2005 Dan Williams <dcbw@redhat.com> 0.4.2-3
277 - Hopefully fix builds not moving past downloading/done
278 - Immediately kill jobs in the 'waiting' state when requested
279 - Utilize pthread_sigmask python module, if present, on Python
280 2.3 and earlier to work around signal blocking issues in
281 Python
282
283 * Tue Nov 1 2005 Dan Williams <dcbw@redhat.com> 0.4.2-2
284 - Make builders retry downloads from the server up to 3 times
285
286 * Tue Nov 1 2005 Dan Williams <dcbw@redhat.com> 0.4.2-1
287 - Fix job download from the builders
288 - Fix RPM copy to the repository on the server
289
290 * Mon Oct 31 2005 Dan Williams <dcbw@redhat.com> 0.4.1-1
291 - Fail jobs on restart if we can't access the original SRPM
292 - For the server, honor config file location passed in on
293 the command line (Jeff Sheltren)
294 - Catch another mock failure case (Alexandr Kanevskiy)
295
296 * Tue Oct 25 2005 Dan Williams <dcbw@redhat.com> 0.4-6
297 - Retry downloads from builders up to 3 times before failing
298 the job
299
300 * Tue Oct 25 2005 Dan Williams <dcbw@redhat.com> 0.4-5
301 - Add a MySQL database backend (Jeff Sheltren)
302 - Trap repo copy errors rather than doing a traceback
303 - On the builder, deal correctly with jobs in 'downloaded' state
304 that have been killed
305
306 * Wed Oct 19 2005 Dan Williams <dcbw@redhat.com> 0.4-4
307 - Really fix client's "allow_uploads" problem
308
309 * Wed Oct 19 2005 Dan Williams <dcbw@redhat.com> 0.4-3
310 - Fix errors in client's 'job detail' function
311 - Ignore missing "allow_uploads" option in client config file
312 - Fix server when the Additional Package Arches section is missing
313 from a target config file
314 - Make server more robust against random builder SSL issues
315
316 * Mon Oct 17 2005 Dan Williams <dcbw@redhat.com> 0.4-2
317 - Increase field size of 'username' and 'status' fields when
318 we initially create them on the server. Server ops will
319 need to increase manually or blow away their jobdb.
320
321 * Sun Oct 16 2005 Dan Williams <dcbw@redhat.com> 0.4-1
322 - Version 0.4
323 o Server:
324 - Per-target config files, new format
325 - Support PostgreSQL as a database backend
326
327 o Builder:
328 - Multiple concurrent builds with one builder process
329 - Better tracking of mock child processes
330 - Autodetect supported architectures and number of
331 concurrent build processes
332 - Per-target config files, new format
333
334 o Client:
335 - Ability to upload packages to server
336
337 o Utilities:
338 - New distro-rebuild.py utility
339 - Fixes for certhelper.py
340
341 * Tue Aug 23 2005 Dan Williams <dcbw@redhat.com> 0.3.4-1
342 - Version 0.3.4
343 o Make repo scripts actually work
344 o Don't traceback when cleaning up job files if we have none
345
346 * Mon Aug 19 2005 Dan Williams <dcbw@redhat.com> 0.3.3-1
347 - Version 0.3.3
348 o Add repo script support
349 o Fix double-slashes in log URL (Ignacio Vazquez-Abrams)
350 o Clear out old job info when requeueing jobs
351
352 * Mon Aug 15 2005 Dan Williams <dcbw@redhat.com> 0.3.2-3
353 - Clear out old job info when requeueing jobs
354
355 * Mon Aug 15 2005 Dan Williams <dcbw@redhat.com> 0.3.2-2
356 - Append %{?dist} to Releases to get correct precedence on FC3, FC4, and Rawhide
357
358 * Mon Aug 15 2005 Dan Williams <dcbw@redhat.com> 0.3.2-1
359 - Version 0.3.2
360 o Fix errors in enqueue and enqueue_srpm return values
361 o Implement client/server API versioning
362
363 * Thu Aug 11 2005 Dan Williams <dcbw@redhat.com> 0.3.1-1
364 - Version 0.3.1
365 o Clean up web interface error handling, catches more errors
366 o Clean up builder code, hopefully deal with block mock processes waiting
367 to write to stderr
368 o Use HTTP GET rather than POST for web forms, more back/forward/reload
369 friendly (Ville Skyttä)
370
371 * Mon Aug 8 2005 Dan Williams <dcbw@redhat.com> 0.3-1
372 - Version 0.3
373
374 * Sat Jul 16 2005 Dan Williams <dcbw@redhat.com>
375 - Bump version to 0.2
376 - Grab python files from /usr/lib, not %{_libdir} until the
377 multiarch issues get worked out
378
379 * Sun Jun 26 2005 Dan Williams <dcbw@redhat.com>
380 - first version/packaging

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed