/usr/share/perl5/Dancer/GetOpt.pm is in libdancer-perl 1.3120+dfsg-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | package Dancer::GetOpt;
use strict;
use warnings;
use Dancer::Config 'setting';
use Getopt::Long;
use FindBin;
use File::Spec;
my $options = {
port => setting('port'),
daemon => setting('daemon'),
confdir => setting('confdir') || setting('appdir'),
environment => 'development',
};
sub arg_to_setting {
my ($option, $value) = @_;
setting($option => $value);
}
sub process_args {
my $help = 0;
GetOptions(
'help' => \$help,
'port=i' => sub { arg_to_setting(@_) },
'daemon' => sub { arg_to_setting(@_) },
'environment=s' => sub { arg_to_setting(@_) },
'confdir=s' => sub { arg_to_setting(@_) },
'restart=s' => sub { arg_to_setting( auto_reload => $_[1] ) },
) || usage_and_exit();
usage_and_exit() if $help;
}
sub usage_and_exit { print_usage() && exit(0) }
sub print_usage {
my $app = File::Spec->catfile( $FindBin::RealBin, $FindBin::RealScript );
print <<EOF
\$ $app [options]
Options:
--daemon Run in background (false)
--port=XXXX Port number to bind to (3000)
--confdir=PATH Path the config dir (appdir if not specified)
--environment=ENV Environment to use (development)
--restart=1|0 Should we restart the application between each request
--help Display usage information
OPTIONS
--daemon
When this flag is set, the Dancer script will detach from the terminal and will
run in background. This is perfect for production environment but is not handy
during the development phase.
--port=XXXX
This lets you change the port number to use when running the process. By
default, the port 3000 will be used.
--confdir=PATH
By default, Dancer looks in the appdir for config files (config.yml and
environments files). You can change this with specifying an alternate path to
the configdir option.
Dancer will then look in that directory for a file config.yml and the
appropriate environement configuration file.
If not specified, confdir points to appdir.
--environment=ENV
Which environment to use. By default this value is set to development.
--restart
Set the value of the B<auto_reload> setting. Useful when you want to switch
this setting for a test without changing the value in your configurations
file.
EOF
}
'Dancer::GetOpt';
|