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.