Spec URL: http://rubenkerkhof.com/packages/Perlbal.spec SRPM URL: http://rubenkerkhof.com/packages/Perlbal-1.58-1.src.rpm Description: Perlbal is a single-threaded event-based server supporting HTTP load balancing, web serving, and a mix of the two. Perlbal can act as either a web server or a reverse proxy. One of the defining things about Perlbal is that almost everything can be configured or reconfigured on the fly without needing to restart the software. A basic configuration file containing a management port enables you to easily perform operations on a running instance of Perlbal. Perlbal can also be extended by means of per-service (and global) plugins that can override many parts of request handling and behavior.
The dependencies (perl-IO-AIO, perl-Danga-Socket) are in extras, but still in the needsign queu for devel, so if you review this, you might want to drop them in a local repo.
This fails to build for me. I have all of the dependencies (they're in rawhide) but the tests don't go well (sorry about any wordwrapping): t/40-ranges..............ok 12/47 skipped: can't do AIO mode linux t/45-buffereduploads..... # Failed test 'buffer_on_rate: buffer file exists' # in t/45-buffereduploads.t at line 214. # Looks like you failed 1 test of 30. dubious Test returned status 1 (wstat 256, 0x100) DIED. FAILED test 17 Failed 1/30 tests, 96.67% okay t/50-plugins.............ok t/52-chunked-upload......ok t/60-child-httpd.........skipped all skipped: Alpha feature; test skipped without $ENV{PERLBAL_TEST_ALPHA} Failed Test Stat Wstat Total Fail Failed List of Failed ------------------------------------------------------------------------------- t/45-buffereduploads.t 1 256 30 1 3.33% 17 1 test and 12 subtests skipped. Failed 1/17 test scripts, 94.12% okay. 1/417 subtests failed, 99.76% okay. make: *** [test_dynamic] Error 255 The skipped tests are OK, but the failed one isn't and I'm not really sure what the problem is.
Hi Jason, That test seems a bit unreliable, it passed for me, but more people where bitten by this: http://lists.danga.com/pipermail/perlbal/2006-June/000215.html I'll talk to upstream to see if something can be done about it.
The upstream maintainer made some adjustments to the test, it's in upstream svn now. If you can confirm it's fixed, upstream will release a new version. The new srpm with the patched test is at http://rubenkerkhof.com/packages/Perlbal-1.59-1.fc7.src.rpm
Wow, I lost track of this. Yes, the updated package works fine for me.
rpmlint says: W: Perlbal mixed-use-of-spaces-and-tabs (spaces: line 1, tab: line 10) which is no big deal; fix it if you like. You probably want to use "perl" instead of "%{__perl}" in your specfile; otherwise you should be consistent and use %{__make}, %{__rm}, %{__mv}, etc. Since that's the only real issue, I'll approve this and you can fix it when you check in. Review: * source files match upstream: 974d684dd02b0a04f8203ff407c876cc1b253ba5066c7673e232dab850a07922 Perlbal-1.59.tar.gz * package meets naming and versioning guidelines. * specfile is properly named. X specfile does not use macros consistently. * summary is OK. * description is OK. * dist tag is present. * build root is OK. * license field matches the actual license. * license is open source-compatible. * license text not included upstream. * latest version is being packaged. * BuildRequires are proper. * %clean is present. * package builds in mock (development, x86_64). * package installs properly * rpmlint has only acceptable complaints. * final provides and requires are sane: config(Perlbal) = 1.59-1.fc8 perl(PalImg) perl(PaletteModify) perl(Perlbal) = 1.59 perl(Perlbal::AIO) perl(Perlbal::BackendHTTP) perl(Perlbal::Cache) = 1.0 perl(Perlbal::ChunkedUploadState) perl(Perlbal::ClientHTTP) perl(Perlbal::ClientHTTPBase) perl(Perlbal::ClientManage) perl(Perlbal::ClientProxy) perl(Perlbal::CommandContext) perl(Perlbal::HTTPHeaders) perl(Perlbal::ManageCommand) perl(Perlbal::Plugin::AccessControl) perl(Perlbal::Plugin::AutoRemoveLeadingDir) perl(Perlbal::Plugin::EchoService) perl(Perlbal::Plugin::EchoService::Client) perl(Perlbal::Plugin::Highpri) perl(Perlbal::Plugin::LazyCDN) perl(Perlbal::Plugin::NotModified) perl(Perlbal::Plugin::Palimg) perl(Perlbal::Plugin::Queues) perl(Perlbal::Plugin::Stats) perl(Perlbal::Plugin::Stats::Storage) perl(Perlbal::Plugin::Vhosts) perl(Perlbal::Pool) perl(Perlbal::ReproxyManager) perl(Perlbal::Service) perl(Perlbal::Socket) perl(Perlbal::TCPListener) perl(Perlbal::Test) perl(Perlbal::Test::WebClient) perl(Perlbal::Test::WebServer) perl(Perlbal::UploadListener) perl(Perlbal::Util) Perlbal = 1.59-1.fc8 = /bin/bash /bin/sh /sbin/chkconfig /sbin/service /usr/bin/perl config(Perlbal) = 1.59-1.fc8 perl(:MODULE_COMPAT_5.8.8) perl(BSD::Resource) perl(Carp) perl(Danga::Socket) >= 1.44 perl(Devel::Peek) perl(Errno) perl(Exporter) perl(Fcntl) perl(File::Path) perl(Getopt::Long) perl(HTTP::Date) perl(HTTP::Request) perl(HTTP::Response) perl(IO::AIO) perl(IO::File) perl(IO::Handle) perl(IO::Socket) perl(IO::Socket::INET) perl(POSIX) perl(Perlbal) perl(Perlbal::AIO) perl(Perlbal::BackendHTTP) perl(Perlbal::Cache) perl(Perlbal::ChunkedUploadState) perl(Perlbal::ClientHTTP) perl(Perlbal::ClientHTTPBase) perl(Perlbal::ClientManage) perl(Perlbal::ClientProxy) perl(Perlbal::CommandContext) perl(Perlbal::HTTPHeaders) perl(Perlbal::ManageCommand) perl(Perlbal::Pool) perl(Perlbal::ReproxyManager) perl(Perlbal::Service) perl(Perlbal::Socket) perl(Perlbal::TCPListener) perl(Perlbal::Test) perl(Perlbal::Test::WebClient) perl(Perlbal::UploadListener) perl(Perlbal::Util) perl(Scalar::Util) perl(Socket) perl(Storable) perl(Sys::Syscall) perl(Time::HiRes) perl(base) perl(constant) perl(fields) perl(lib) perl(strict) perl(vars) perl(warnings) * %check is present and all tests pass: All tests successful, 1 test skipped. Files=17, Tests=406, 40 wallclock secs ( 1.83 cusr + 0.59 csys = 2.42 CPU) (One test is skipped intentionally.) * owns the directories it creates. * doesn't own any directories it shouldn't. * no duplicates in %files. * file permissions are appropriate. * scriptlets OK (chkconfig calls from ScriptletSnippets). * code, not content. * documentation is small, so no -docs subpackage is necessary. * %docs are not necessary for the proper functioning of the package. APPROVED
Thanks Jason, Sorry that it took so long, I was on holiday New Package CVS Request ======================= Package Name: Perlbal Short Description: Reverse-proxy load balancer and webserver Owners: ruben Branches: EL-4 EL-5 FC-6 F-7
cvs done.