From a67db573e5b06e10deb50f08a092a911b50c7a9c Mon Sep 17 00:00:00 2001 From: Griffin Smith Date: Thu, 16 Jul 2020 20:33:35 -0400 Subject: feat(3p/nix/nix-daemon): Implement Worker::QueryDerivationOutputNames handler Change-Id: Ie17e37322dd0e241cd35b6d8e69bd6c968fd6ff2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/1231 Tested-by: BuildkiteCI Reviewed-by: tazjin --- third_party/nix/src/nix-daemon/nix-daemon-proto.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/third_party/nix/src/nix-daemon/nix-daemon-proto.cc b/third_party/nix/src/nix-daemon/nix-daemon-proto.cc index 1783867308..ef45fbd2a9 100644 --- a/third_party/nix/src/nix-daemon/nix-daemon-proto.cc +++ b/third_party/nix/src/nix-daemon/nix-daemon-proto.cc @@ -1,4 +1,5 @@ #include +#include #include #include "libproto/worker.grpc.pb.h" @@ -128,6 +129,18 @@ class WorkerServiceImpl final : public WorkerService::Service { } } + Status QueryDerivationOutputNames( + grpc::ServerContext* context, const StorePath* request, + nix::proto::DerivationOutputNames* response) override { + auto path = request->path(); + auto names = store_->queryDerivationOutputNames(path); + for (const auto& name : names) { + response->add_names(name); + } + + return Status::OK; + } + Status QueryMissing(grpc::ServerContext* context, const StorePaths* request, nix::proto::QueryMissingResponse* response) override { std::set targets; -- cgit 1.4.1