On Feb 25, 2004, at 8:10 PM, Stas Bekman wrote:
Apache::Test's "make test" can't be run as root if it gets unpacked somewhere under /root/, since Apache needs to run as 'nobody' which can't read/write files under /root/. Apache::Test's build nicely detects that situation and lets users to opt out from running 'make test'
I'm sorry, i'm not able to reproduce this behaviour with CPANPLUS 0.049; see a copy of the commands+output i've used below the sig
What version of CPANPLUS are you using?
When running under CPAN.pm there are no problems. But when running under CPANPLUS, STDERR is buffered and the logic flow is broken. First the user gets the prompt:I'm not getting this question -- Is this during 'perl Makefile.PL', because that one is /always/ run with verbose = 1 to allow for interactive makefile.pls
CPAN Terminal> i Apache::Test ... Skip the test suite? [No]
of course, the user can't make the right decision and reports us an error, which is not a module's problem. CPANPLUS is broken in that respect.I'm still not sure /what/ is supposedly broken, since Apache::Test does not behave in the way you describe for me.
-- Jos Boumans
"Two rules to success in life: 1. Don't tell people everything you know" --Sassan Tat
CPANPLUS http://cpanplus.sf.net
[EMAIL PROTECTED] ~]$ whoami
root
[EMAIL PROTECTED] ~]$ cpanp
CPANPLUS::Shell::Default -- CPAN exploration and modules installation (v0.03)
*** Please report bugs to <[EMAIL PROTECTED]>.
*** Using CPANPLUS::Backend v0.049. ReadLine support enabled.
CPAN Terminal> s verbose 0
verbose was set to 0
CPAN Terminal> ! print $>, $<
00
CPAN Terminal> i Apache::Test
Installing: Apache::Test
[ info] generating script t/TEST
Checking if your kit is complete...
Looks good
!!! Makefile.PL has found old copies of Apache/test.pm which will
be removed during 'make install' to prevent collisions with Apache::Test:
/usr/local/lib/perl5/site_perl/5.6.1/mach/Apache/test.pm
CPAN authors are advised to either use Apache::testold or port their
test suite to Apache::Test which works with both mod_perl generations.
Writing Makefile for Apache::Test
/usr/local/bin/perl -Iblib/arch -Iblib/lib t/TEST -clean
APACHE_TEST_GROUP= APACHE_TEST_PORT= APACHE_TEST_APXS= APACHE_TEST_USER= APACHE_TEST_HTTPD= /usr/local/bin/perl -Iblib/arch -Iblib/lib t/TEST -bugreport -verbose=0
We are now going to configure the Apache-Test framework. This configuration process needs to be done only once.
First we need to know where the 'httpd' executable is located. If you have more than one Apache server is installed, make sure you supply the path to the one you are going to use for testing. You can always override this setting at run time via the '-httpd' option. For example:
% t/TEST -httpd /path/to/alternative/httpd
or via the environment variable APACHE_TEST_HTTPD. For example:
% APACHE_TEST_HTTPD=/path/to/alternative/httpd t/TEST
If for some reason you want to skip the test suite, type: skip
Please provide a full path to 'httpd' executable:
[] /usr/local/apache/bin/httpd
Next we need to know where the 'apxs' script is located. This script provides a lot of information about the apache installation, and makes it easier to find things. However it's not available on all platforms, therefore it's optional.
If you don't have it installed it's not a problem. Just press Enter.
Notice that if you have Apache 2.x installed that script could be called as 'apxs2'.
If you have more than one Apache server is installed, make sure you supply the path to the apxs script you are going to use for testing. You can always override this setting at run time via the '-apxs' option. For example:
% t/TEST -apxs /path/to/alternative/apxs
or via the environment variable APACHE_TEST_APXS. For example:
% APACHE_TEST_APXS=/path/to/alternative/apxs t/TEST
Please provide a full path to (optional) 'apxs' executable:
[] /usr/local/apache/bin/apxs
[warning] rerunning '/usr/local/bin/perl /root/.cpanplus/5.6.1/build/Apache-Test-1.08/t/TEST -bugreport -verbose=0' with new config opts
[warning] root mode: changing the files ownership to 'nobody' (65534:65534)
[warning] testing whether 'nobody' is able to -rwx /root/.cpanplus/5.6.1/build/Apache-Test-1.08/t
/usr/local/bin/perl -Mlib=lib -MApache::TestRun -e 'eval { Apache::TestRun::run_root_fs_test(65534, 65534, q[/root/.cpanplus/5.6.1/build/Apache-Test-1.08/t]) }';
[warning] result: OK
/usr/local/apache/bin/httpd -d /root/.cpanplus/5.6.1/build/Apache-Test-1.08/t -f /root/.cpanplus/5.6.1/build/Apache-Test-1.08/t/conf/httpd.conf -DAPACHE1
using Apache/1.3.28
waiting 60 seconds for server to start: ..
waiting 60 seconds for server to start: ok (waited 1 secs)
server localhost:8529 started
t/ping.......ok
t/request....ok
All tests successful.
Files=2, Tests=12, 1 wallclock secs ( 0.91 cusr + 0.24 csys = 1.15 CPU)
[warning] root mode: restoring the original files ownership
[warning] server localhost:8529 shutdown
Successfully installed Apache::Test
CPAN Terminal>