App-KGB
view release on metacpan or search on metacpan
man5/kgb.conf.pod view on Meta::CPAN
Enables broadcasting all commit notifications to this channel.
=item repos
A list of project names, as described in the B<repositories> map. Mandatory
unless broadcast is enabled.
=item smart_answers
Each channel can contain separate list of smart answers, see below.
=back
=head2 smart_answers
A list of strings to be used as replies when the bot is addressed on IRC.
=head2 smart_answers_polygen
If set to a true value, L<polygen(1)> will be used to generate replies when the
bot is addressed on IRC.
=head2 debug
Enables logging of additional diagnostic information.
=head2 admins
A list of IRC masks, used to determine if a given IRC nick is bot
administrator. Note that currently these nicks have no additional power.
=head2 colors
A map of colors to be used when painting commit messages. The following keys
are recognized:
=over
=item revision
Commit ID. Default: none.
=item path
Changed path. Default: teal.
Depending on the action performed to the path, additional coloring is made:
=over
=item addition
Used for added paths. Default: green.
=item modification
Used for modified paths. Default: teal.
=item deletion
Used for deleted paths. Default: bold red.
=item replacement
Used for replaced paths (a Subversion concept). Default: brown.
=item prop_change
Used for paths with changed properties (a Subversion concept), combined with
other colors depending on the action -- addition, modification or replacement.
Default: underline.
=back
=item author
Commit author. Default: green.
=item branch
Commit branch. Default: brown.
=item module
Project module. Default: purple.
=item web
URL to commit information. Default: silver.
=item separator
The separator before the commit log. Default: none.
=back
=head2 webhook
A map for enabling GitLab webook support. Possible keys:
=over
=item enabled
Enable webhhok support by setting this to 1.
=item allowed_networks
A list of allowed IP networks. Required.
=back
=head2 short_url_service I<name>
The name of a WWW::Shorten module to use for URL-shortening. The leading
C<WWW::Shorten::> part must be omitted.
Default: none
Example: Debli
=head1 EXAMPLE CONFGURATION
# vim: filetype=yaml
---
soap:
server_addr: 127.0.0.1
server_port: 9999
service_name: KGB
queue_limit: 150
log_file: "/var/log/kgb-bot.log"
include: "/etc/kgb-bot/kgb.conf.d"
repositories:
# just a name to identify it
foo:
# needs to be the same on the client
password: supersecret
# private repositories aren't announced to broadcast channels
# private: yes
# Some witty answer for people that talk to the bot
#smart_answers:
# - "I won't speak with you!"
# - "Do not disturb!"
# - "Leave me alone, I am buzy!"
# Admins are allowed some special !commands (currently only !version)
#admins:
# - some!irc@mask
# - some!other@host
networks:
freenode:
nick: KGB
ircname: KGB bot
username: kgb
password: ~
nickserv_password: ~
server: irc.freenode.net
port: 6667
channels:
# a broadcast channel
- name: '#commits'
network: freenode
broadcast: yes
# a channel, tied to one or several repositories
- name: '#foo'
network: freenode
repos:
- foo
# Can also be set per-channel
#smart_answers:
# - "I'm in ur channel, watching ur commits!"
# - "I am not listening"
# - "Shut up! I am buzy watching you."
pid_dir: /var/run/kgb-bot
# anything less is rejected
min_protocol_ver: 1
# default colors:
colors:
repository: bold
revision: bold
author: green
branch: brown
module: purple
path: teal
addition: green
modification: teal
deletion: "bold red"
replacement: reverse
prop_change: underline
web: silver
# you can combine them like "bold red" (ouch!)
# available colors: black, navy, green, red, brown, purple, orange, yellow,
# lime, teal, aqua, blue, fuchsia, gray, silver, white
# available modifiers: bold underline reverse
webhook:
enabled: 1
allowed_networks:
- 127.0.0.1
short_url_service: Debli
=head1 SEE ALSO
L<kgb-bot(1)>, L<kgb-client(1)>
=head1 AUTHOR
=over
=item Damyan Ivanov L<dmn@debian.org>
=back
=head1 COPYRIGHT & LICENSE
Copyright (C) 2012, 2013 Damyan Ivanov
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
( run in 0.916 second using v1.01-cache-2.11-cpan-ad19def0cd9 )