Catalyst-Helper-InitScript-FreeBSD

 view release on metacpan or  search on metacpan

lib/Catalyst/Helper/InitScript/FreeBSD.pm  view on Meta::CPAN

=head1 NAME

Catalyst::Helper::InitScript::FreeBSD - /usr/local/etc/rc.d/yourapp.sh generator.

=head1 SYNOPSIS

    % ./script/yourapp_create.pl InitScript::FreeBSD -- --help
    usage: ./script/yourapp_create.pl
        -? -help       display this help and exits.
           -user       The real uid of fastcgi process. [default is USERNAME]
           -group      The real gid of fastcgi process. [default is GROUP]
        -p -pidfile    specify filename for pid file.
                       [default is /var/run/yourapp.pid]
        -l -listen     Socket path to listen on can be HOST:PORT, :PORT or a filesystem path.
                       [default is /var/run/yourapp.sockets]
        -n -nproc      specify number of processes to keep to serve requests.
                       [default is 4]
           -mysql      run after init mysql. [default is no]
           -postgresql run after init postgresql. [default is no]

    % ./script/yourapp_create.pl InitScript::FreeBSD -- -nproc 2 -mysql 

lib/Catalyst/Helper/InitScript/FreeBSD.pm  view on Meta::CPAN

=cut

sub mk_stuff {
    my ( $class, $helper, @args ) = @_;

    # vars 
    my $vars = {
        app   => lc($helper->{app}) || die,
        base  => $helper->{base},
        user  => getpwuid($UID) || "",
        group => getgrgid($GID) || "",
        nproc => 4,
        use_socket => 1,
    };
    $vars->{pidfile} = "/var/run/$vars->{app}.pid";
    $vars->{listen}  = "/var/run/$vars->{app}.sockets";
    my $output  = canonpath(catfile($vars->{base}, "$vars->{app}.sh.sample"));

    # parse args
    {
        no warnings 'uninitialized';

lib/Catalyst/Helper/InitScript/FreeBSD.pm  view on Meta::CPAN

    return 1;
}

sub _usage {
    my ($class, $vars) = @_;

    print <<USAGE;
usage: $0
    -? -help       display this help and exits.
       -user       The real uid of fastcgi process. [default is $vars->{user}]
       -group      The real gid of fastcgi process. [default is $vars->{group}]
    -p -pidfile    specify filename for pid file. 
                   [default is $vars->{pidfile}]
    -l -listen     Socket path to listen on can be HOST:PORT, :PORT or a filesystem path. 
                   [default is $vars->{listen}]
    -n -nproc      specify number of processes to keep to serve requests. 
                   [default is $vars->{nproc}]
       -mysql      run after init mysql. [default is no]
       -postgresql run after init postgresql. [default is no]
USAGE
}



( run in 1.086 second using v1.01-cache-2.11-cpan-5735350b133 )