1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
package inc::DBICOptionalDeps;
use Moose;
use DBIx::Class::Optional::Dependencies;
extends 'Dist::Zilla::Plugin::MakeMaker::Awesome';
override _build_MakeFile_PL_template => sub {
my ($self) = @_;
my $template = super();
my $injected = <<'INJECT';
require DBIx::Class::Optional::Dependencies;
$WriteMakefileArgs{PREREQ_PM} = {
%{ $WriteMakefileArgs{PREREQ_PM} || {} },
%{ DBIx::Class::Optional::Dependencies->req_list_for ('deploy') },
};
INJECT
$template =~ s{(?=WriteMakefile\s*\()}{$injected};
return $template;
};
around register_prereqs => sub {
my $orig = shift;
my $self = shift;
$self->$orig(@_);
$self->zilla->register_prereqs(
{ phase => 'develop' },
%{ DBIx::Class::Optional::Dependencies->req_list_for('deploy') }
);
return
};
__PACKAGE__->meta->make_immutable;
|