feat(tvix): Thread a log sink through calls to buildDerivation
Similarly to how we did for buildPaths, add a std::ostream& log_sink parameter to the build_derivation method on Store, and pass it std::cerr when called at the top level by nix commands - most notably, the build-remote hook binary, so that we get build logs when using tvix as a remote builder. Change-Id: I0f8f729ba8429d4838a0a135a5c2ac1e1a95d575 Reviewed-on: https://cl.tvl.fyi/c/depot/+/2176 Tested-by: BuildkiteCI Reviewed-by: andi <andi@notmuch.email> Reviewed-by: kanepyork <rikingcoding@gmail.com>
This commit is contained in:
parent
1d22874ab2
commit
49024be056
13 changed files with 31 additions and 18 deletions
|
|
@ -687,7 +687,10 @@ class WorkerServiceImpl final : public WorkerService::Service {
|
|||
return Status(grpc::StatusCode::INTERNAL, "Invalid build mode");
|
||||
}
|
||||
|
||||
BuildResult res = store_->buildDerivation(drv_path, drv, *build_mode);
|
||||
BuildLogStreambuf log_buffer(writer);
|
||||
std::ostream log_sink(&log_buffer);
|
||||
BuildResult res =
|
||||
store_->buildDerivation(log_sink, drv_path, drv, *build_mode);
|
||||
|
||||
proto::BuildResult proto_res{};
|
||||
proto_res.set_status(res.status_to_proto());
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue