On Tue, Jun 04, 2013 at 05:12:25PM +0200, gregor herrmann wrote:
> On Tue, 04 Jun 2013 10:31:03 +0300, Niko Tyni wrote:
> 
> > > The interesting thing is that after this change, the "second" test
> > > suite, from ModPerl-Registry/t, gets suddenly called from
> > > dh_auto_test; and fails because the necessary directories are not yet
> > > there.
> > Hm. I think that was actually the case earlier too and I just didn't
> > notice it? At least the buildd logs seem that way.
> 
> I don't think I've seen it this way -- at least when I uploaded the
> package it worked differently (and I would have noticed the failures
> :))

Hm. I see at least the kfreebsd-i386 buildd ran the ModPerl-Registry
test suite twice. Clearly a separate manual run shouldn't be necessary.

> > > So this is a new patch (for 2x DefaultRuntimeDir) and some changes in
> > > debian/rules.
> > Wouldn't putting DefaultRuntimeDir into debian/apache2.conf suffice?
> 
> Good idea!
> 
> Unfortunately it doesn't work, seems like this doesn't get through?!

Oh well. I suppose only known directives are picked up. Never mind,
the Apache-Test approach is better.

> > Ideally, I think Apache-Test should be modified to add DefaultRuntimeDir
> > into the base httpd.conf where it sets ServerRoot et al. I looked at
> > that a bit but didn't get quite there yet.

> Yup, works. No sure if this should be configurable, for now I've
> just added it to the conf template as "@ServerRoot@/run".

For reference, I'm attaching what I came up with. I put it
inside an <IfVersion> block to make it easier to push upstream.

It looks like logs is used for other similar things too (like
the PID file) so I ditched the run directory. 

The upstream httpd24 change of adding DefaultRuntimeDir to
t/conf/extra.conf.in can be removed after this one is in.

Anyway, feel free to upload your solution (or anything else that
works :) for now to fix the FTBFS bug. This is clearly going
to take a while to converge.

> Interestingly the same file also claims to create t/logs:
>     $self->gendir($vars->{t_logs});
> (line 1560). No idea why this doesn't happen (in time?).

I suspect it's not called for the first t/TEST invocation that
cleans the target. Or something like that.

Thanks for looking at this!
-- 
Niko Tyni   nt...@debian.org
>From a29a7af4eafe508129896ec7a863ed73ebc7b575 Mon Sep 17 00:00:00 2001
From: Niko Tyni <nt...@debian.org>
Date: Tue, 4 Jun 2013 00:41:47 +0300
Subject: [PATCH] Set DefaultRuntimeDir to the logs directory on Apache >=
 2.4.2

---
 Apache-Test/lib/Apache/TestConfig.pm |    4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Apache-Test/lib/Apache/TestConfig.pm b/Apache-Test/lib/Apache/TestConfig.pm
index 65d8515..f2d0906 100644
--- a/Apache-Test/lib/Apache/TestConfig.pm
+++ b/Apache-Test/lib/Apache/TestConfig.pm
@@ -2148,6 +2148,10 @@ PidFile     @t_pid_file@
 ErrorLog    @t_logs@/error_log
 LogLevel    debug
 
+<IfVersion > 2.4.1>
+DefaultRunTimeDir "@t_logs@"
+</IfVersion>
+
 <IfModule mod_log_config.c>
     TransferLog @t_logs@/access_log
 </IfModule>
-- 
1.7.10.4

Reply via email to