Commit | Line | Data |
8bf3eee1 |
1 | package DBIx::Class::DeploymentHandler::WithSqltDeployMethod; |
2 | use Moose::Role; |
3 | |
4 | use DBIx::Class::DeploymentHandler::SqltDeployMethod; |
5 | |
6 | use Carp 'carp'; |
7 | |
8 | has deploy_method => ( |
c5eedffc |
9 | |
10 | # < mst> isa => 'DBIx::Class::DeploymentHandler::SqltDeployMethod', |
11 | # < mst> should be |
12 | # < mst> does => <some role> |
13 | # < mst> and that role should supply those methods |
14 | # < mst> then you can pass handles => <some role> as well |
15 | |
8bf3eee1 |
16 | isa => 'DBIx::Class::DeploymentHandler::SqltDeployMethod', |
17 | is => 'ro', |
18 | lazy_build => 1, |
19 | handles => [qw{ |
8a7847f1 |
20 | _deploy |
a912450b |
21 | prepare_install |
199410d3 |
22 | prepare_update |
8a7847f1 |
23 | _upgrade_single_step |
8bf3eee1 |
24 | }], |
25 | ); |
26 | |
27 | sub _build_deploy_method { |
a912450b |
28 | my $self = shift; |
29 | my $args = { |
30 | schema => $self->schema, |
31 | databases => $self->databases, |
32 | upgrade_directory => $self->upgrade_directory, |
33 | sqltargs => $self->sqltargs, |
34 | do_backup => $self->do_backup, |
35 | }; |
36 | $args->{backup_directory} = $self->backup_directory |
37 | if $self->has_backup_directory; |
38 | DBIx::Class::DeploymentHandler::SqltDeployMethod->new($args); |
8bf3eee1 |
39 | } |
40 | |
41 | 1; |
e051bb00 |
42 | |
43 | __END__ |
44 | |
5e69e635 |
45 | vim: ts=2 sw=2 expandtab |