Add duration to Slack notification.
This commit is contained in:
parent
cd234f6a14
commit
14d5577bf8
|
@ -7,6 +7,23 @@ use LWP::UserAgent;
|
||||||
use Hydra::Helper::CatalystUtils;
|
use Hydra::Helper::CatalystUtils;
|
||||||
use JSON;
|
use JSON;
|
||||||
|
|
||||||
|
sub renderDuration {
|
||||||
|
my ($build) = @_;
|
||||||
|
my $duration = $build->stoptime - $build->starttime;
|
||||||
|
my $res = "";
|
||||||
|
if ($duration >= 24*60*60) {
|
||||||
|
$res .= ($duration / (24*60*60)) . "d";
|
||||||
|
}
|
||||||
|
if ($duration >= 60*60) {
|
||||||
|
$res .= (($duration / (60*60)) % 24) . "h";
|
||||||
|
}
|
||||||
|
if ($duration >= 60) {
|
||||||
|
$res .= (($duration / 60) % 60) . "m";
|
||||||
|
}
|
||||||
|
$res .= ($duration % 60) . "s";
|
||||||
|
return $res;
|
||||||
|
}
|
||||||
|
|
||||||
sub buildFinished {
|
sub buildFinished {
|
||||||
my ($self, $build, $dependents) = @_;
|
my ($self, $build, $dependents) = @_;
|
||||||
my $cfg = $self->{config}->{slack};
|
my $cfg = $self->{config}->{slack};
|
||||||
|
@ -61,7 +78,7 @@ sub buildFinished {
|
||||||
my $text = "";
|
my $text = "";
|
||||||
$text .= "Job <$baseurl/job/${\$build->project->name}/${\$build->jobset->name}/${\$build->job->name}|${\showJobName($build)}>";
|
$text .= "Job <$baseurl/job/${\$build->project->name}/${\$build->jobset->name}/${\$build->job->name}|${\showJobName($build)}>";
|
||||||
$text .= " (and ${\scalar @deps} others)" if scalar @deps > 0;
|
$text .= " (and ${\scalar @deps} others)" if scalar @deps > 0;
|
||||||
$text .= ": <$baseurl/build/${\$build->id}|" . showStatus($build) . ">";
|
$text .= ": <$baseurl/build/${\$build->id}|" . showStatus($build) . ">". " in " . renderDuration($build);
|
||||||
|
|
||||||
if (scalar keys %{$authors} > 0) {
|
if (scalar keys %{$authors} > 0) {
|
||||||
# FIXME: escaping
|
# FIXME: escaping
|
||||||
|
|
Loading…
Reference in a new issue