Bug 13257: update_dbix_class_files.pl need a POD
authorTomas Cohen Arazi <tomascohen@gmail.com>
Fri, 14 Nov 2014 14:38:48 +0000 (11:38 -0300)
committerTomas Cohen Arazi <tomascohen@gmail.com>
Fri, 14 Nov 2014 14:38:48 +0000 (11:38 -0300)
Signed-off-by: Tomas Cohen Arazi <tomascohen@gmail.com>
misc/devel/update_dbix_class_files.pl

index d231582..9b080e0 100755 (executable)
 # along with Koha; if not, see <http://www.gnu.org/licenses>.
 
 use Modern::Perl;
+
 use DBIx::Class::Schema::Loader qw/ make_schema_at /;
+
 use Getopt::Long;
+use Pod::Usage;
 
 my $path = "./";
 my $db_driver = 'mysql';
 my $db_host = 'localhost';
 my $db_port = '3306';
-my $db_name = '';
-my $db_user = '';
-my $db_passwd = '';
+my $db_name;
+my $db_user;
+my $db_passwd;
+my $help;
+
 GetOptions(
     "path=s"      => \$path,
     "db_driver=s" => \$db_driver,
@@ -37,10 +42,73 @@ GetOptions(
     "db_name=s"   => \$db_name,
     "db_user=s"   => \$db_user,
     "db_passwd=s" => \$db_passwd,
+    "h|help"      => \$help
 );
 
-make_schema_at(
-    "Koha::Schema",
-    { debug => 1, dump_directory => $path, preserve_case => 1 },
-    ["DBI:$db_driver:dbname=$db_name;host=$db_host;port=$db_port",$db_user, $db_passwd ]
-);
+# If we were asked for usage instructions, do it
+pod2usage(1) if defined $help;
+
+if (! defined $db_name ) {
+    print "Error: \'db_name\' parameter is mandatory.\n";
+    pod2usage(1);
+} else {
+
+    make_schema_at(
+        "Koha::Schema",
+        { debug => 1, dump_directory => $path, preserve_case => 1 },
+        ["DBI:$db_driver:dbname=$db_name;host=$db_host;port=$db_port",$db_user, $db_passwd ]
+    );
+}
+
+1;
+
+=head1 NAME
+
+misc/devel/update_dbix_class_files.pl
+
+=head1 SYNOPSIS
+
+ update_dbix_class_files.pl --db_name=db-name --db_user=db-user \
+                            --db_passwd=db-pass ...
+
+The command in usually called from the root directory for the Koha source tree.
+If you are runing from another directory, use the --path switch to specify
+a different path.
+
+=head1 OPTIONS
+
+=over 8
+
+=item B<--db_name>
+
+DB name. (mandatory)
+
+=item B<--db_user>
+
+DB user name.
+
+=item B<--db_passwd>
+
+DB password.
+
+=item B<--db_driver>
+
+DB driver to be used. (defaults to 'mysql')
+
+=item B<--db_host>
+
+hostname for the DB server. (defaults to 'localhost')
+
+=item B<--db_port>
+
+port number for the DB server. (defaults to '3306')
+
+=item B<--path>
+
+path into which create the schema files. (defaults to './')
+
+=item B<-h|--help>
+
+prints this help text
+
+=back
\ No newline at end of file