The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

App::CLI::Plugin::Config::YAML::Syck - for App::CLI::Extension config plugin module

VERSION

1.2

SYNOPSIS

  # MyApp.pm
  package MyApp;

  use strict;
  use base qw(App::CLI::Extension);

  # extension method
  __PACKAGE__->load_plugins(qw(Config::YAML::Syck));
  
  # extension method
  __PACKAGE__->config( config_file => "/path/to/config.yaml");
  
  1;
  
  
  # /path/to/config.yaml
  # ---
  # name: kurt
  # age:  27
  
  # MyApp/Hello.pm
  package MyApp::Hello;
  
  use strict;
  use base qw(App::CLI::Command);
  
  sub run {
  
      my($self, @argv) = @_;
      print "Hello! my name is " . $self->config->{name} . "\n";
      print "age is " . "$self->config->{age}\n";
  }
  
  # myapp
  #!/usr/bin/perl
  
  use strict;
  use MyApp;
  
  MyApp->dispatch;
  
  # execute
  [kurt@localhost ~] ./myapp hello
  Hello! my name is kurt
  age is 27

DESCRIPTION

App::CLI::Extension YAML::Syck Configuration plugin module

The priority of the config file (name of the execute file in the case of *myapp*)

1. /etc/myapp.yml

2. /usr/local/etc/myapp.yaml

3. $HOME/.myapp.yml

4. $APPCLI_CONFIGFILE(environ variable. if exists)

5. command line option

   myapp hello --configfile=/path/to/config.yml

6. config method setting

   __PACKAGE__->config(config_file => "/path/to/config.yml");

EXTENDED METHOD

setup

SEE ALSO

App::CLI::Extension YAML::Syck

AUTHOR

Akira Horimoto

COPYRIGHT AND LICENSE

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

Copyright (C) 2009 Akira Horimoto