NAME

dbicdeploy - deploy a DBIx::Class schema to a database

SYNOPSIS

Deploy to a database server:

dbicdeploy schema DSN [username [password [{ extra => 'args'}]]]

Generate a directory containing SQL to execute to create the schema:

dbicdeploy schema directory [databases]

Examples:

dbicdeploy -Ilib MyApp::Schema DBI:SQLite:root/database

dbicdeploy MyApp::Schema DBI:mysql:foo username password

dbicdeploy MyApp::Schema DBI:Pg:foo user pass '{ pg_enable_utf8 => 1 }'

dbicdeploy MyApp::Schema root/myapp_schema

dbicdeploy MyApp::Schema root/myapp_schema SQLite MySQL

See perldoc dbicdeploy for more information.

OPTIONS

-Ilib

lib is a directory to add to the search path for the schema. You can have 0 or more of these, just like perl.

-l

Alias for -Ilib

-b

Get libraries from blib instead.

Schema

The name of the DBIx::Class::Schema subclass that you want to deploy.

DSN

The DBI data source (DBI:...) that you want to connect to, or the directory to write SQL scripts to.

Extra Arguments

Everything after the Schema and DSN will be passed to the connect command. Usually the first two arguments are the username and password.

The third argument is special. It will be run through eval, so you can say { hash => 'of options', and => 'so on' }, and DBI will see a hash, not a string. If the option doesn't parse as perl, the deploy will be aborted.

In the case that you're deploying to a file instead of a database, the arguments after the filename are used as the names of the database engines you want to generate SQL for.

SEE ALSO

DBICx::Deploy, included with this distribution.

AUTHOR

Jonathan Rockway <jrockway@cpan.org>

LICENSE

This program is free software. You may redistribute it under the same terms as Perl it self.