feat(tvix): Implement all remaining RPC calls

Implement all remaining RPC calls on the RpcSstore client, remove a few
stub methods we had added that weren't actually present in the old
RemoteStore implementation, and add one more RPC call for getBuildLog
that is present in the store API, but that we hadn't added as a
stub *or* to the proto.

Fixes: #29
Change-Id: Id827f51a393ece4bc7bbecaf38aee9eb4b329770
Reviewed-on: https://cl.tvl.fyi/c/depot/+/1692
Reviewed-by: kanepyork <rikingcoding@gmail.com>
Tested-by: BuildkiteCI
This commit is contained in:
Griffin Smith 2020-08-08 16:44:50 -04:00 committed by glittershark
parent 747dc65154
commit e440f60b6c
8 changed files with 159 additions and 50 deletions

View file

@ -690,6 +690,19 @@ class WorkerServiceImpl final : public WorkerService::Service {
__FUNCTION__);
};
Status GetBuildLog(grpc::ServerContext* context, const StorePath* request,
proto::BuildLog* response) override {
return HandleExceptions(
[&]() -> Status {
const auto log = store_->getBuildLog(request->path());
if (log) {
response->set_build_log(*log);
}
return Status::OK;
},
__FUNCTION__);
}
private:
Status HandleExceptions(std::function<Status(void)> fn,
absl::string_view methodName) {