Ukigumo::Client - Client library for Ukigumo
use Ukigumo::Client; use Ukigumo::Client::VC::Git; use Ukigumo::Client::Executor::Auto; use Ukigumo::Client::Notify::Debug; use Ukigumo::Client::Notify::Ikachan; my $app = Ukigumo::Client->new( vc => Ukigumo::Client::VC::Git->new( branch => $branch, repository => $repo, ), executor => Ukigumo::Client::Executor::Perl->new(), server_url => $server_url, project => $project, ); $app->push_notifier( Ukigumo::Client::Notify::Ikachan->new( url => $ikachan_url, channel => $ikachan_channel, ) ); $app->run();
Ukigumo::Client is client library for Ukigumo.
workdir
Working directory for the code. It's $ENV{HOME}/.ukigumo/work/$project/$branch by default.
$ENV{HOME}/.ukigumo/work/$project/$branch
project
Its' project name. This is a mandatory parameter.
logfh
Log file handle. It's read only parameter.
server_url
URL of the Ukigumo server. It's required.
user_agent
instance of LWP::UserAgent. It's have a default value.
vc
This is a version controller object. It's normally Ukigumo::Client::VC::*. But you can write your own class.
VC::* objects should have a following methods:
get_revision branch repository
executor
This is a test executor object. It's normally Ukigumo::Client::Executor::*. But you can write your own class.
notifiers
This is a arrayref of notifier object. It's normally Ukigumo::Client::Notify::*. But you can write your own class.
compare_url
URL to compare differences between range of commitments.
elapsed_time_sec
Elapsed time as seconds about executing tests.
push a notifier object to $client->notifiers.
Run a test context.
Send a notification to the sever.
Send a notification to the server and notify via registered notifier.
This method runs $command and tee the output of the STDOUT/STDERR to the logfh.
$command
Return: exit code by the $command.
Print $message as INFO and write to the logfh.
$message
Print $message as WARN and write to the logfh.
This method always sends FAIL report to server and notifies to each notifiers.
If .ukigumo.yml file is on the project root, Ukigumo::Client loads that file and applies the settings that are written in it.
.ukigumo.yml
Please see also ukigumo.yml.pod.
Tokuhiro Matsuno <tokuhirom AAJKLFJEF@ GMAIL COM>
Ukigumo::Server, Ukigumo
Copyright (C) Tokuhiro Matsuno
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Ukigumo::Client, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Ukigumo::Client
CPAN shell
perl -MCPAN -e shell install Ukigumo::Client
For more information on module installation, please visit the detailed CPAN module installation guide.