NAME
    Run::Parts - Offers functionality of Debian's run-parts tool in Perl.

VERSION
    Version 0.05

SYNOPSIS
    Run::Parts offers functionality of Debian's run-parts tool in Perl.

    run-parts runs all the executable files named within constraints
    described in run-parts(8) and Run::Parts::Perl, found in the given
    directory. Other files and directories are silently ignored.

    Additionally it can just print the names of the all matching files (not
    limited to executables, but ignores blacklisted files like e.g. backup
    files), but don't actually run them.

    This is useful when functionality or configuration is split over
    multiple files in one directory. A typical convention is that the
    directory name ends in ".d". Common examples for such splittet
    configuration directories:

        /etc/cron.d/
        /etc/apt/apt.conf.d/
        /etc/apt/sources.list.d/,
        /etc/aptitude-robot/pkglist.d/
        /etc/logrotate.d/
        /etc/rsyslog.d/

    Perhaps a little code snippet.

        use Run::Parts;

        my $rp  = Run::Parts->new('directory'); # chooses backend automatically
        my $rpp = Run::Parts->new('directory', 'perl'); # pure perl backend
        my $rpd = Run::Parts->new('directory', 'debian'); # uses /bin/run-parts

        my @file_list        = $rp->list;
        my @executables_list = $rpp->test;
        my $commands_output  = $rpd->run;
        ...

INSTALLATION
    To install this module, run the following commands:

        perl Build.PL
        ./Build
        ./Build test
        ./Build install

BACKENDS
    Run::Parts contains two backend implementation. Run::Parts::Debian
    actually uses /bin/run-parts and Run::Parts::Perl is a pure Perl
    implementation of a basic set of run-parts' functionality.

    Run::Parts::Debian may or may not work with RedHat's simplified
    shell-script based reimplementation of Debian's run-parts.

    By default Run::Parts uses Run::Parts::Debian if /bin/run-parts exists,
    Run::Parts::Perl otherwise. But you can also choose any of the backends
    explicitly.

SEE ALSO
    run-parts(8), Run::Parts::Debian, Run::Parts::Perl

AUTHOR
    Axel Beckert, `<abe@deuxchevaux.org>'

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

CODE
    You can find a git repository of Run::Parts' code at
    https://github.com/xtaran/run-parts.

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

        perldoc Run::Parts

    You can also look for information at:

    * RT: CPAN's request tracker (report bugs here)
        http://rt.cpan.org/NoAuth/Bugs.html?Dist=Run-Parts

    * AnnoCPAN: Annotated CPAN documentation
        http://annocpan.org/dist/Run-Parts

    * CPAN Ratings
        http://cpanratings.perl.org/d/Run-Parts

    * Search CPAN
        http://search.cpan.org/dist/Run-Parts/

LICENSE AND COPYRIGHT
    Copyright 2013 Axel Beckert.

    This program is free software; you can redistribute it and/or modify it
    under the terms of either: the GNU General Public License as published
    by the Free Software Foundation; or the Artistic License.

    See http://dev.perl.org/licenses/ for more information.

