kgb-client - relay commits to KGB servers
Contents
Configuration
--confconfigurationfile
Specifies the path to kgb-client configuration file.
Configuration options (except --conf, --fake and --relay-msg) may be specified both in the configuration
file and on the command line. Usually you want to have all the options in a configuration file, because
having passwords on the command line is insecure. The configuration file also gives more control, for
example it supports multiple servers and multiple ways of detection of branch and module names.
See kgb-client.conf(5) for available configuration options. Unless noted otherwise, all the options in
the configuration file can also be used on command line, prefixing them with two dashes. E.g. "repo-id"
becomes "--repo-id".
Options given on the command line take precedence over configuration file.
Description
kgb-client is the client counterpart of kgb-bot(1). It is intended to be used as a hook in your version
control system, executed after the repository gets updated. It analyzes the commit(s) and then relays the
information to the KGB server, which will show it on IRC.
Fake Commit Mode
If invoked with the --fake option, kgb-client will send a fake commit to the servers. This is useful for
testing client-server communication independently from VCS setup.
Message Relay Mode
When the --relay-msg option is given, there is no repository to be inspected. Instead, the non-option
command line arguments are passed verbatim to the bot to display on IRC. This can be used for real-time
notification about other events like bug submissions etc.
Name
kgb-client - relay commits to KGB servers
See Also
kgb-client.conf(5) App::KGB::Client App::KGB::Client::Subversion App::KGB::Client::Git App::KGB::Client::CVS perl v5.40.0 2024-09-20 KGB-CLIENT(1p)
Supported Version Control Systems
Subversion
Installation requires calling kgb-client with two command line arguments, like this:
/path/to/kgb-client "$REPOS" "$REV"
pathtothesubversionrepository
This is the physical path to the Subversion repository. Something like /srv/svn/my-reporevision
This is the revision number of the commit, that has triggered the hook.
Both these arguments are supplied to the standard Subversion post-commit hooks.
Gitkgb-client shall be installed as a post-receive hook. Something along the following shall do:
#!/bin/sh
exec /path/to/kgb-client --conf /path/to.conf ...
By default, kgb-client will read the reflog information from standard input as any standard Git post-
receive hook. See --git-reflog option if something else is wanted.
There are other ways to give kgb-client information about Git reflog, mostly useful when debugging on in
unusual situations. See App::KGB::Client::Git.
The following settings can be configured via git-config(1):
conf
web-link
CVSkgb-client shall be installed in the loginfo file in the "CVSROOT" module of the CVS repository. It shall
be given two arguments -- the repository root, and the directory in which the changes are being made.
For example:
ALL /path/to/kgb-client --conf /path/to.conf ... "$CVSROOT" "%p"
Synopsis
kgb-client --conf /path/to/config [other-option ...]
kgb-client --uri http://some.server:port/service --password password --repo-id repository --repository
svn|git|cvs --timeout timeout-in-seconds --single-line-commits off|forced|auto --use-irc-notices
--web-link template --short-url-service service --status-dir directory --[no]-use-color
--message-template template --batch-messages --dry-run
kgb-clientoption... /svn/reporevisionkgb-clientoption... old-revnew-revref-namekgb-clientoption... $CVSROOT "%p"
kgb-clientoption... --fake
kgb-clientoption... --relay-msg message...
kgb-client --help
kgb-client --man
