App-SmokeBrew-Plugin-BINGOS
view release on metacpan or search on metacpan
lib/App/SmokeBrew/Plugin/BINGOS.pm view on Meta::CPAN
if( $@ ) {
push @failures, $unixfile;
}
}, $dir );
}
delete $INC{$_} for @failures;
@INC = @RUN_TIME_INC;
}
my $ConfObj = CPANPLUS::Configure->new;
my $Config = CONFIG_BOXED;
my $Util = 'CPANPLUS::Internals::Utils';
my $ConfigFile = $ConfObj->_config_pm_to_file( $Config => $PRIV_LIB );
{ ### no base dir even, set it up
unless( IS_DIR->( $BASE ) ) {
$Util->_mkdir( dir => $BASE ) or die CPANPLUS::Error->stack_as_string;
}
unless( -e $ConfigFile ) {
$ConfObj->set_conf( base => $BASE ); # new base dir
$ConfObj->set_conf( verbose => 1 ); # be verbose
$ConfObj->set_conf( prereqs => 1 ); # install prereqs
$ConfObj->set_conf( prefer_bin => 1 );
$ConfObj->set_conf( prefer_makefile => 1 ); # prefer Makefile.PL because of v5.10.0
$ConfObj->set_conf( enable_custom_sources => 0 ); # install prereqs
$ConfObj->set_conf( hosts => + . $self->_mirrors . q+ );
$ConfObj->set_conf( skiptest => + . $self->testskip . q+ );
$ConfObj->set_program( sudo => undef );
$ConfObj->save( $Config => $PRIV_LIB ); # save the pm in that dir
}
}
{
$Module::Load::Conditional::CHECK_INC_HASH = 1;
use CPANPLUS::Backend;
my $cb = CPANPLUS::Backend->new( $ConfObj );
my $su = $cb->selfupdate_object;
$cb->module_tree( 'Test::More' )->install() if $] == 5.010000; # need this because 'version'
$cb->module_tree( 'parent' )->install() if $] < 5.010001; # need this because 'version'
$cb->module_tree( 'version' )->install(); # Move this here too because EUMM icky is icky :S
$cb->module_tree( 'ExtUtils::MakeMaker' )->install(); # Move this here because icky is icky >:)
$cb->module_tree( 'Module::Build' )->install(); # Move this here because perl-5.10.0 is icky
$su->selfupdate( update => 'dependencies', latest => 1 );
$cb->module_tree( $_ )->install() for
qw(
CPANPLUS
File::Temp
Compress::Raw::Bzip2
Compress::Raw::Zlib
Compress::Zlib
ExtUtils::CBuilder
ExtUtils::ParseXS
ExtUtils::Manifest
Log::Message::Simple
Test::Reporter::Transport::Socket
CPANPLUS::YACSmoke
);
$_->install() for map { $su->modules_for_feature( $_ ) } qw(prefer_makefile md5 storable cpantest);
}
+;
}
sub _cpconf {
my $self = shift;
my $cpconf = q+
use strict;
use warnings;
use Getopt::Long;
use CPANPLUS::Configure;
my $mx;
my $email;
GetOptions( 'mx=s', \$mx, 'email=s', \$email );
my $conf = CPANPLUS::Configure->new();
$conf->set_conf( verbose => 1 );
$conf->set_conf( prefer_bin => 1 );
$conf->set_conf( cpantest => 'dont_cc' );
$conf->set_conf( 'cpantest_reporter_args' =>
{
transport => 'Socket',
transport_args => [ host => +;
$cpconf .= sprintf( "'%s', port => '%s' ] } );", $self->relay, $self->port );
$cpconf .= q+
$conf->set_conf( email => $email );
$conf->set_conf( makeflags => 'UNINST=1' );
$conf->set_conf( buildflags => 'uninst=1' );
$conf->set_conf( enable_custom_sources => 0 );
$conf->set_conf( show_startup_tip => 0 );
$conf->set_conf( write_install_logs => 0 );
$conf->set_conf( hosts => +;
$cpconf .= $self->_mirrors() . ');';
$cpconf .= q+
$conf->set_program( sudo => undef );
$conf->save();
exit 0;
+;
return $cpconf;
}
no Moose;
__PACKAGE__->meta->make_immutable;
qq[Smokin'];
__END__
=pod
=encoding UTF-8
=head1 NAME
( run in 2.105 seconds using v1.01-cache-2.11-cpan-5837b0d9d2c )