From 7a3e7d0e61a651cb929b88a23f930785cfef3774 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Tue, 6 Dec 2016 17:43:39 +0100 Subject: nix-store --serve: Suppress log output on stderr when repeating a build --- src/libstore/build.cc | 3 ++- src/libstore/globals.hh | 5 +++++ 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'src/libstore') diff --git a/src/libstore/build.cc b/src/libstore/build.cc index ba51f85917f3..89d363a098b8 100644 --- a/src/libstore/build.cc +++ b/src/libstore/build.cc @@ -3047,7 +3047,8 @@ void DerivationGoal::handleEOF(int fd) void DerivationGoal::flushLine() { - if (settings.verboseBuild) + if (settings.verboseBuild && + (settings.printRepeatedBuilds || curRound == 1)) printError(filterANSIEscapes(currentLogLine, true)); else { logTail.push_back(currentLogLine); diff --git a/src/libstore/globals.hh b/src/libstore/globals.hh index 3194193bc842..a423b4e5c0f4 100644 --- a/src/libstore/globals.hh +++ b/src/libstore/globals.hh @@ -149,6 +149,11 @@ struct Settings { before being killed (0 means no limit). */ unsigned long maxLogSize; + /* When build-repeat > 0 and verboseBuild == true, whether to + print repeated builds (i.e. builds other than the first one) to + stderr. Hack to prevent Hydra logs from being polluted. */ + bool printRepeatedBuilds = true; + /* How often (in seconds) to poll for locks. */ unsigned int pollInterval; -- cgit 1.4.1