App-Sqitch
view release on metacpan or search on metacpan
lib/App/Sqitch/Engine.pm view on Meta::CPAN
package App::Sqitch::Engine;
use 5.010;
use Moo;
use strict;
use utf8;
use Try::Tiny;
use Locale::TextDomain qw(App-Sqitch);
use Path::Class qw(file);
use App::Sqitch::X qw(hurl);
use List::Util qw(first max);
use URI::db 0.20;
use App::Sqitch::Types qw(Str Int Num Sqitch Plan Bool HashRef URI Maybe Target);
use namespace::autoclean;
use constant registry_release => '1.1';
use constant default_lock_timeout => 60;
our $VERSION = 'v1.6.1'; # VERSION
has sqitch => (
is => 'ro',
isa => Sqitch,
required => 1,
weak_ref => 1,
);
has target => (
is => 'ro',
isa => Target,
required => 1,
weak_ref => 1,
handles => {
uri => 'uri',
client => 'client',
registry => 'registry',
destination => 'name',
}
);
has username => (
is => 'ro',
isa => Maybe[Str],
lazy => 1,
default => sub {
my $self = shift;
$self->target->username || $self->_def_user
},
);
has password => (
is => 'ro',
isa => Maybe[Str],
lazy => 1,
default => sub {
my $self = shift;
$self->target->password || $self->_def_pass
},
);
sub _def_user { }
sub _def_pass { }
sub registry_destination { shift->destination }
has start_at => (
is => 'rw',
isa => Str
( run in 1.806 second using v1.01-cache-2.11-cpan-39bf76dae61 )