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

NAME

App::ForExample - A guide through Catalyst, Apache, lighttpd, nginx, monit, ..., configuration hell

VERSION

Version 0.01

SYNOPSIS

    for-example catalyst/fastcgi apache2 standalone --package My::Application --hostname example.com

    for-example monit --home $HOME/my-monit

    for-example catalyst/mod_perl --package Project::Xyzzy --hostname xyzzy.com --home Project-Xyzzy

DESCRIPTION

App::ForExample is a command-line tool for generating sample configurations. It is NOT designed to do configuration management, but a guide to get you 80% of the way "there"

This tool came into being because I was tired of forgetting the configuration syntax for Apache2/lighttpd/Catalyst/FastCGI and having to pull up a web browser to hunt and search for examples

Besides the usual Apache2, lighttpd, nginx, and FastCGI, configurations, App::ForExample can create a FastCGI start-stop script and a monit configuration for monitoring those processes

USAGE

    Usage: for-example ACTION

    Where ACTION can be

    (Note: Every option below is, well, optional. If not specified, a fun default will be chosen/guessed for you)

        catalyst/fastcgi ...

            Generate a Catalyst FastCGI configuration (for monit, start-stop, or the specified http daemon and fastcgi method)

            --package           The Catalyst package for your application (e.g. Project::Xyzzy or My::Application)
            --home              The path to your Catalyst home directory, default: . (The current directory)
            --log-home          The directory to log into, default: <home>/log (Below the directory given by --home)
            --base              The base for your application, default: / (At the root)
            --hostname          The hostname from which your application is served (e.g. example.com)

            --no-monit          Do not print out a monit configuration, if applicable
            --no-start-stop     Do not print out a start/stop script, if applicable
            --no-bundle         Do not print out anything BUT the configuration (no monit, no start-stop)

            apache2 standalone  Apache2 with standalone FastCGI (mod_fastcgi)
            apache2 static      Apache2 with static FastCGI (mod_fastcgi)
            apache2 dynamic     Apache2 with dynamic FastCGI (mod_fastcgi)


            lighttpd standalone lighttpd with dynamic FastCGI
            lighttpd static     lighttpd with static FastCGI

            nginx               nginx with standalone FastCGI (the only kind supported)

            monit               A monit configuration for a standalone FastCGI setup
            start-stop          A start-stop script for a standalone FastCGI setup
            
        catalyst/mod_perl

            Generate a mod_perl2 (for Apache2) Catalyst configuration

            --package           The Catalyst package for your application (e.g. Project::Xyzzy or My::Application)
            --home              The path to your Catalyst home directory, default: . (The current directory)
            --log-home          The directory to log into, default: <home>/log (Below the directory given by --home)
            --base              The base for your application, default: / (At the root)
            --hostname          The hostname from which your application is served (e.g. example.com)

        monit

            Generate a basic, stripped-down monit configuration suitable for a non-root user

            --home              The directory designated monit home (containing the pid file, log, rc, ...)

INSTALL

You can install App::ForExample by using CPAN:

    cpan -i App::ForExample

If that doesn't work properly, you can find help at:

    http://sial.org/howto/perl/life-with-cpan/
    http://sial.org/howto/perl/life-with-cpan/macosx/ # Help on Mac OS X
    http://sial.org/howto/perl/life-with-cpan/non-root/ # Help with a non-root account

CONTRIBUTE

The GitHub repository is:

    http://github.com/robertkrimen/App-ForExample/tree/master

SEE ALSO

http://dev.catalystframework.org/wiki/deployment

Catalyst::Engine::Apache

Catalyst::Engine::FastCGI

ACKNOWLEDGEMENTS

All the people that have put effort into the Catalyst documentation, including the pod, advent, and wiki

Dan Dascalescu, Jay Shirley, Tomas Doran, Daniel Austin, Jason Felds, Moritz Onken, and Brian Friday, who all put effort into the deployment wiki, which formed the basis for many parts of this tool

AUTHOR

Robert Krimen, <rkrimen at cpan.org>

BUGS

Please report any bugs or feature requests to bug-app-forexample at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=App-ForExample. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc App::ForExample

You can also look for information at:

ACKNOWLEDGEMENTS

COPYRIGHT & LICENSE

Copyright 2009 Robert Krimen, all rights reserved.

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