X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FHelper.pm;h=3b8679396ea1175739c8dbfcb68540393152b858;hb=0ff7106c9f4652163ca58c84130de0fee52ea2f9;hp=57a5a2da5a0d2e245bfffce5f446a47604af1948;hpb=8565f89d2f95ab6b5383faee6497609dc2480e03;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Helper.pm b/lib/Catalyst/Helper.pm index 57a5a2d..3b86793 100644 --- a/lib/Catalyst/Helper.pm +++ b/lib/Catalyst/Helper.pm @@ -82,6 +82,7 @@ sub mk_app { if ($gen_app) { $self->_mk_dirs; + $self->_mk_config; $self->_mk_appclass; $self->_mk_readme; $self->_mk_changes; @@ -117,7 +118,6 @@ sub mk_component { || eval { @{ [ getpwuid($<) ] }[6] } || 'A clever guy'; $self->{base} ||= File::Spec->catdir( $FindBin::Bin, '..' ); - die $self->{base}; unless ( $_[0] =~ /^(?:model|view|controller)$/i ) { my $helper = shift; my @args = @_; @@ -355,6 +355,14 @@ sub _mk_makefile { } } +sub _mk_config { + my $self = shift; + my $dir = $self->{dir}; + my $appprefix = $self->{appprefix}; + $self->render_file( 'config', + File::Spec->catfile( $dir, "$appprefix.json" ) ); +} + sub _mk_readme { my $self = shift; my $dir = $self->{dir}; @@ -526,18 +534,14 @@ use warnings; # Set flags and add plugins for the application # # -Debug: activates the debug mode for very useful log messages -# Static::Simple: will serve static files from the applications root directory +# Static::Simple: will serve static files from the application's root +# directory # use Catalyst qw/-Debug Static::Simple/; our $VERSION = '0.01'; # -# Configure the application -# -__PACKAGE__->config( name => '[% name %]' ); - -# # Start the application # __PACKAGE__->setup; @@ -556,6 +560,8 @@ Catalyst based application. =head1 METHODS +=cut + =head2 default =cut @@ -599,21 +605,20 @@ it under the same terms as Perl itself. __makefile__ use inc::Module::Install; -name('[% dir %]'); -abstract('Catalyst Application'); -author('[% author %]'); -version_from('[% path %]'); -license('perl'); +name '[% dir %]'; +all_from '[% path %]'; -include('ExtUtils::AutoInstall'); +requires Catalyst => '5.62'; -requires( Catalyst => '5.58' ); +catalyst; -catalyst_files(); - -install_script( glob('script/*.pl') ); -auto_install(); -&WriteAll; +install_script glob('script/*.pl'); +auto_install; +WriteAll; +__config__ +{ + "name": "[% name %]" +} __readme__ Run script/[% appprefix %]_server.pl to test the application. __changes__ @@ -623,7 +628,7 @@ This file documents the revision history for Perl extension [% name %]. - initial revision, generated by Catalyst __apptest__ use Test::More tests => 2; -use_ok( Catalyst::Test, '[% name %]' ); +BEGIN { use_ok( Catalyst::Test, '[% name %]' ); } ok( request('/')->is_success ); __podtest__ @@ -738,7 +743,7 @@ pod2usage(1) if $help; (requires -listen) -d -daemon daemonize (requires -listen) -M -manager specify alternate process manager - (FCGI::ProcessManager sub-class) + (FCGI::ProcManager sub-class) or empty string to disable =head1 DESCRIPTION @@ -779,7 +784,7 @@ my $port = 3000; my $keepalive = 0; my $restart = 0; my $restart_delay = 1; -my $restart_regex = '\.yml$|\.yaml$|\.pm$'; +my $restart_regex = '\.yml$|\.yaml$|\.json|\.pm$'; my @argv = @ARGV; @@ -804,6 +809,8 @@ if ( $debug ) { $ENV{CATALYST_DEBUG} = 1; } +# This is require instead of use so that the above environment +# variables can be set at runtime. require [% name %]; [% name %]->run( $port, $host, { @@ -838,7 +845,7 @@ require [% name %]; -rd -restartdelay delay between file checks -rr -restartregex regex match files that trigger a restart when modified - (defaults to '\.yml$|\.yaml$|\.pm$') + (defaults to '\.yml$|\.yaml$|\.json|\.pm$') See also: perldoc Catalyst::Manual