1 package Catalyst::Script::Server;
4 $ENV{CATALYST_ENGINE} ||= 'HTTP';
5 $ENV{CATALYST_SCRIPT_GEN} = 31;
6 require Catalyst::Engine::HTTP;
10 use lib "$Bin/../lib";
13 use Catalyst::Engine::HTTP;
14 use namespace::clean -except => [ qw(meta) ];
16 with 'MooseX::Getopt';
19 traits => [qw(Getopt)],
27 has host => ( isa => 'Str', is => 'ro', required => 0, default => "localhost" );
30 traits => [qw(Getopt)],
37 has listen => ( isa => 'Int', is => 'ro', required => 0, default => "3000" );
38 has pidfile => ( isa => 'Str', is => 'ro', required => 0 );
39 has keepalive => ( isa => 'Bool', is => 'ro', required => 0, default => 0 );
40 has background => ( isa => 'Bool', is => 'ro', required => 0 );
41 has app => ( isa => 'Str', is => 'ro', required => 1 );
42 has restart => ( isa => 'Bool', is => 'ro', required => 0 );
43 has restart_delay => ( isa => 'Int', is => 'ro', required => 0 );
44 has restart_regex => ( isa => 'Str', is => 'ro', required => 0 );
45 has follow_symlinks => ( isa => 'Bool', is => 'ro', required => 0 );
52 pod2usage() if $self->help;
54 Class::MOP::load_class($app);
56 $self->listen, $self->host,
58 'fork' => $self->fork,
59 keepalive => $self->keepalive,
60 background => $self->background,
61 pidfile => $self->pidfile,
62 keepalive => $self->keepalive,
63 restart => $self->restart,
64 restart_delay => $self->restart_delay,
65 restart_regex => qr/$self->restart_regex/,
66 # FIXME restart_directory => $self->restart_directory,
67 follow_symlinks => $self->follow_symlinks,
78 [% appprefix %]_server.pl - Catalyst Testserver
82 [% appprefix %]_server.pl [options]
85 -d -debug force debug mode
86 -f -fork handle each request in a new process
88 -? -help display this help and exits
89 -host host (defaults to all)
90 -p -port port (defaults to 3000)
91 -k -keepalive enable keep-alive connections
92 -r -restart restart when files get modified
94 -rd -restartdelay delay between file checks
95 (ignored if you have Linux::Inotify2 installed)
96 -rr -restartregex regex match files that trigger
97 a restart when modified
98 (defaults to '\.yml$|\.yaml$|\.conf|\.pm$')
99 -restartdirectory the directory to search for
100 modified files, can be set mulitple times
101 (defaults to '[SCRIPT_DIR]/..')
102 -follow_symlinks follow symlinks in search directories
103 (defaults to false. this is a no-op on Win32)
104 -background run the process in the background
105 -pidfile specify filename for pid file
108 perldoc Catalyst::Manual
109 perldoc Catalyst::Manual::Intro
113 Run a Catalyst Testserver for this application.
117 Catalyst Contributors, see Catalyst.pm
121 This library is free software. You can redistribute it and/or modify
122 it under the same terms as Perl itself.