feat(clbot): Create Gerrit watcher and basic clbot binary.

gerrit.Watcher is a class which watches the Gerrit stream-events SSH
connection and produces events.

There's a basic CLBot binary as well, to demonstrate driving it to
produce messages on the logging output. It doesn't really do anything
else.

Change-Id: I274fe0a77c8329f79456425405e2fbdc3ca2edf0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/245
Reviewed-by: tazjin <mail@tazj.in>
This commit is contained in:
Luke Granger-Brown 2020-06-13 23:43:09 +01:00 committed by lukegb
parent f6c7c85d94
commit c05803ff14
14 changed files with 1235 additions and 0 deletions

View file

@ -0,0 +1,18 @@
{ depot, ... }:
let
inherit (depot.fun) clbot;
inherit (depot.third_party) gopkgs;
in
depot.nix.buildGo.package {
name = "code.tvl.fyi/fun/clbot/gerrit";
srcs = [
./watcher.go
];
deps = [
clbot.gerrit.gerritevents
gopkgs."github.com".cenkalti.backoff.gopkg
gopkgs."github.com".golang.glog.gopkg
gopkgs."golang.org".x.crypto.ssh.gopkg
];
}