#!/usr/bin/env perl use FindBin; use lib "$FindBin::Bin/../lib"; use App::Netdisco; use Dancer ':script'; use Dancer::Plugin::DBIC 'schema'; use App::Netdisco::DB; use Getopt::Long; =head1 nd-dbic-versions This script creates SQL DDL files of the Netdisco database schema. If called without any CLI options, it makes one SQL DDL file which will initialize the complete schema to the current DBIx::Class specification. If called with the "-p " option, upgrade SQL DDL command files are created between the specified version and the current DBIx::Class specification. =cut my $sql_dir = $App::Netdisco::DB::schema_versions_dir; my $version = schema('netdisco')->schema_version; my ( $preversion, $help ); GetOptions( 'p|preversion:s' => \$preversion, ) or do { print <] This script creates SQL DDL files of the Netdisco database schema. If called without any CLI options, it makes one SQL DDL file which will initialize the complete schema to the current DBIx::Class specification. If called with the "-p " option, upgrade SQL DDL command files are created between the specified version and the current DBIx::Class specification. SQL DDL files are stored in: $sql_dir ENDHELP exit(1); }; schema('netdisco')->create_ddl_dir( 'PostgreSQL', $version, $sql_dir, $preversion );