1 package Catalyst::Script::Deploy;
4 use namespace::autoclean;
7 use MooseX::Types::Moose qw/Str/;
10 use lib "$FindBin::Bin/../lib";
12 #extends qw(MooseX::App::Cmd);
18 traits => [qw(NoGetopt)],
26 traits => [qw(Getopt)],
28 documentation => qq{ specify a configuration file to read from }
33 print "usage: perl script/myapp_deploy_schema.pl myapp.conf\n";
41 $self->usage if $self->help;
44 Class::MOP::load_class($app);
45 Class::MOP::load_class("$app::Schema");
47 my %hash = $conf->getall;
49 my $schema = $app::Schema->connect(
50 $hash{"Model::$schema_name"}{connect_info}[0],
51 $hash{"Model::$schema_name"}{connect_info}[1],
52 $hash{"Model::$schema_name"}{connect_info}[2]
54 $schema->deploy( { add_drop_tables => 1 } );
59 __PACKAGE__->meta->make_immutable;