App::RunCron , fatpack して一枚のスクリプトで扱う

songmu さんが作った App::RunCron - making wrapper script for crontab - metacpan.org をどうやって使うか考えて、ひとまず

#!/usr/bin/env perl

use strict;
use warnings;
use App::RunCron;
use Getopt::Long;

# for handling double dash of @ARGV
GetOptions();

App::RunCron->new(
    command => [@ARGV],
    error_reporter => sub {
        my $runner = shift;

        # stdout
        print STDOUT $runner->report;

        # post to irc
        ...

    },
)->run;

こんな感じのスクリプトを fatpack して一枚で扱えるようにして使ってみることにした。設定 yaml のこととかは全く考えずに cronlog とおなじ感覚で + stdout に吐く以外の事を足して使います。

あと --- のハンドリングを getopt::long に任せました。