]> git.pld-linux.org Git - packages/perl-TheSchwartz.git/blob - perl-TheSchwartz.spec
- drop obsolete and outdated manual inclusion of rpm macros
[packages/perl-TheSchwartz.git] / perl-TheSchwartz.spec
1 #
2 # Conditional build:
3 %bcond_with     tests           # perform "make test"
4 #
5 %define pdir    TheSchwartz
6 Summary:        TheSchwartz - reliable job queue
7 #Summary(pl.UTF-8):     
8 Name:           perl-TheSchwartz
9 Version:        1.07
10 Release:        1
11 # same as perl
12 License:        GPL v1+ or Artistic
13 Group:          Development/Languages/Perl
14 Source0:        http://search.cpan.org/CPAN/authors/id/B/BR/BRADFITZ/%{pdir}-%{version}.tar.gz
15 # Source0-md5:  c5c4c2a0c8a43f2c5e698e8d849f2382
16 URL:            http://search.cpan.org/dist/TheSchwartz/
17 BuildRequires:  perl-devel >= 1:5.8.0
18 BuildRequires:  rpm-perlprov >= 4.1-13
19 BuildRequires:  perl(Data::ObjectDriver) >= 0.04
20 BuildArch:      noarch
21 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
22
23 %description
24 TheSchwartz is a reliable job queue system. Your application can put jobs into
25 the system, and your worker processes can pull jobs from the queue atomically
26 to perform. Failed jobs can be left in the queue to retry later.
27
28 Abilities specify what jobs a worker process can perform. Abilities are the
29 names of TheSchwartz::Worker subclasses, as in the synopsis: the MyWorker
30 class name is used to specify that the worker script can perform the job. When
31 using the TheSchwartz client's work functions, the class-ability duality
32 is used to automatically dispatch to the proper class to do the actual work.
33
34 TheSchwartz clients will also prefer to do jobs for unused abilities before
35 reusing a particular ability, to avoid exhausting the supply of one kind of job
36 while jobs of other types stack up.
37
38 Some jobs with high setup times can be performed more efficiently if a group of
39 related jobs are performed together. TheSchwartz offers a facility to
40 coalesce jobs into groups, which a properly constructed worker can find and
41 perform at once. For example, if your worker were delivering email, you might
42 store the domain name from the recipient's address as the coalescing value. The
43 worker that grabs that job could then batch deliver all the mail for that
44 domain once it connects to that domain's mail server.
45
46
47
48 # %description -l pl.UTF-8
49 # TODO
50
51 %prep
52 %setup -q -n %{pdir}-%{version}
53
54 %build
55 %{__perl} Makefile.PL \
56         INSTALLDIRS=vendor
57 %{__make}
58
59 %{?with_tests:%{__make} test}
60
61 %install
62 rm -rf $RPM_BUILD_ROOT
63
64 %{__make} pure_install \
65         DESTDIR=$RPM_BUILD_ROOT
66
67 %clean
68 rm -rf $RPM_BUILD_ROOT
69
70 %files
71 %defattr(644,root,root,755)
72 %doc CHANGES doc extras
73 %attr(755,root,root) %{_bindir}/schwartzmon
74 %{perl_vendorlib}//*.pm
75 %{perl_vendorlib}/TheSchwartz/
76 %{_mandir}/man3/*
This page took 0.1116 seconds and 3 git commands to generate.