hydra-notify: Fix processing notifications
[?]
Aug 12, 2019, 3:28 PM
4ZCUCACYWDLCZUKIH2OLFC4NCPBE2YO7Y7AZ7WL3AESZQ3TSIYXQCDependencies
- [2]
WYELTQMOSeparate payload elements using \t - [3]
32KJOERMTurn hydra-notify into a daemon - [4]
IE2PRAQUhydra-queue-runner: Send build notifications
Change contents
- edit in src/script/hydra-notify at line 99
my $notify = $dbh->func("pg_notifies");next if !$notify; - replacement in src/script/hydra-notify at line 100
my ($channelName, $pid, $payload) = @$notify;#print STDERR "got '$channelName' from $pid: $payload\n";while (my $notify = $dbh->func("pg_notifies")) { - replacement in src/script/hydra-notify at line 102
my @payload = split /\t/, $payload;my ($channelName, $pid, $payload) = @$notify;#print STDERR "got '$channelName' from $pid: $payload\n";my @payload = split /\t/, $payload; - replacement in src/script/hydra-notify at line 107
eval {if ($channelName eq "build_started") {buildStarted(int($payload[0]));} elsif ($channelName eq "build_finished") {my $buildId = int($payload[0]);my $build = $db->resultset('Builds')->find($buildId)or die "build $buildId does not exist\n";buildFinished($build, @payload[1..$#payload]);} elsif ($channelName eq "step_finished") {stepFinished(int($payload[0]), int($payload[1]));eval {if ($channelName eq "build_started") {buildStarted(int($payload[0]));} elsif ($channelName eq "build_finished") {my $buildId = int($payload[0]);my $build = $db->resultset('Builds')->find($buildId)or die "build $buildId does not exist\n";buildFinished($build, @payload[1..$#payload]);} elsif ($channelName eq "step_finished") {stepFinished(int($payload[0]), int($payload[1]));}};if ($@) {print STDERR "error processing message '$payload' on channel '$channelName': $@\n"; - edit in src/script/hydra-notify at line 122
};if ($@) {print STDERR "error processing message '$payload' on channel '$channelName': $@\n";