http://www.perlmonks.org?node_id=947125


in reply to Re^2: Testing CPAN module that requires credentials
in thread Testing CPAN module that requires credentials

Don't.

Doing your own prompting and reading from STDIN is bad practice. Instead use ExtUtils::MakeMaker's prompt() subroutine. It will cope properly with things like buffering when CPAN.pm's output is being piped to tee(1) or if it is being driven by Expect, and with the user setting PERL_MM_USE_DEFAULT.

Replies are listed 'Best First'.
Re^4: Testing CPAN module that requires credentials
by Anonymous Monk on Jan 10, 2012 at 10:29 UTC

    A better idea, don't prompt at all, no matter what :)

    Simply document the appropriate enviroment variable

    $ENV{PERL_MYCPANMODULE_CONFIG}='foo.yaml'; $ENV{PERL_MYCPANMODULE_USERPASS}='user:pass';

    Or Makefile.PL switch

    perl Makefile.PL --userpass=user:pass
    and then Makefile.PL stores that in MYCPANMODULE.ini next to Makefile.PL for use during  make test or some such

    I believe Module::Build provides something out of the box for this way, I might be wrong