Tomohiro Teranishi > Catalyst-Plugin-ConfigLoader-Multi-0.06 > Catalyst::Plugin::ConfigLoader::Multi

Download:
Catalyst-Plugin-ConfigLoader-Multi-0.06.tar.gz

Dependencies

Annotate this POD

View/Report Bugs
Module Version: 0.06   Source  

NAME ^

Catalyst::Plugin::ConfigLoader::Multi - Catalyst Plugin for Multiple ConfigLoader

SYNOPSIS ^

    package MyApp;
    
    use strict;
    use warnings;
    
    use Catalyst::Runtime '5.70';
    
    
    use Catalyst qw/-Debug ConfigLoader::Multi/;
    
    our $VERSION = '0.01';
    
    __PACKAGE__->config( name => 'MyApp' );
    # Do not forget add this.
    __PACKAGE__->config( 'Plugin::ConfigLoader' => { file => __PACKAGE__->path_to('conf')  } );
    
    __PACKAGE__->setup;
    
    1;

Your directory

    %tree
    /Users/tomyhero/work/MyApp/
    |-- Changes
    |-- Makefile.PL
    |-- README
    |-- conf
    |   |-- my_app_local.yml
    |   |-- myapp.yml
    |   |-- myapp_bar.yml
    |   `-- myapp_foo.yml
    |-- lib
    |   |-- MyApp
    |   |   |-- Controller
    |   |   |   `-- Root.pm
    |   |   |-- Model
    |   |   `-- View
    |   `-- MyApp.pm
    |-- root
    |-- script
    `-- t

DESCRIPTION ^

When a project is getting bigger and bigger , it is hard to organize a config file. So we create this plugin which divide a config file to multiple. Config files name must start your project prefix. such as 'myapp_' .

 __PACKAGE__->config( 'Plugin::ConfigLoader' => { file => __PACKAGE__->path_to('conf')  } );

Do not forget add this code to your MyApp.pm

METHOD ^

find_files

override from ConfigLoader

ENV ^

you can specify local file with this setting.( you must use local_sufix for the file name )

 $ENV{MYAPP_CONFIG_MULTI} = '/tmp/foo/your_own_local.yaml'

SEE ALSO ^

Catalyst::Plugin::ConfigLoader

AUTHOR ^

Masahiro Funakoshi <masap@cpan.org>

Yu-suke Amano

Tomohiro Teranishi <tomohiro.teranishi@gmail.com>

COPYRIGHT ^

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

syntax highlighting: