/usr/sbin/kgb-split-config is in kgb-bot 1.33-2ubuntu1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 | #!/usr/bin/perl
# vim: ts=4:sw=4:et:ai:sts=4
#
# KGB - an IRC bot helping collaboration
# Copyright © 2012 Damyan Ivanov
# Copyright © 2012 gregor herrmann
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
#
# This program is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Software Foundation, Inc., 51
# Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
use strict;
use warnings;
use 5.010;
use autodie;
use YAML qw(LoadFile DumpFile);
use File::Spec;
no warnings 'once';
local $YAML::SortKeys = [qw(repositories channels)];
use warnings;
my $file = '/etc/kgb-bot/kgb.conf';
my $dir = '/etc/kgb-bot/kgb.conf.d';
my $yaml = LoadFile($file);
foreach my $repo ( keys %{ $yaml->{repositories} } ) {
my $splitconfig = {};
$splitconfig->{repositories}->{$repo} = $yaml->{repositories}->{$repo};
foreach my $channel ( @{ $yaml->{channels} } ) {
push @{ $splitconfig->{channels} }, $channel
if grep { $_ eq $repo } @{ $channel->{repos} };
}
my $outfile = File::Spec->catdir( $dir, "$repo.conf" );
DumpFile( $outfile, $splitconfig );
}
__END__
=head1 NAME
kgb-split-config - helper script for splitting out project configurations
=head1 SYNOPSIS
B<kgb-split-config>
=head1 DESCRIPTION
B<kgb-split-config> extracts project configurations from F</etc/kgb-bot/kgb.conf> and
dumps them as separate files into F</etc/kgb-bot/kgb.conf.d/>.
=head1 COPYRIGHT AND LICENSE
Copyright (C) 2012 Damyan Ivanov
Copyright (C) 2012 gregor herrmann
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51
Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
=cut
|