aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/build.cc
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2017-05-02 12:16:29 +0200
committerEelco Dolstra <edolstra@gmail.com>2017-05-02 12:16:29 +0200
commit174b68a2a2e9e58fa1a1a0036858a566c51684dc (patch)
treefb8af58549562a1c697474e7ea95e2ad80224747 /src/libstore/build.cc
parent70581b63633016329789872c73dc48b1d498c729 (diff)
build-hook: If there are no machines defined, quit permanently
Diffstat (limited to 'src/libstore/build.cc')
-rw-r--r--src/libstore/build.cc11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/libstore/build.cc b/src/libstore/build.cc
index a9649ea37..e756d3377 100644
--- a/src/libstore/build.cc
+++ b/src/libstore/build.cc
@@ -1598,8 +1598,15 @@ HookReply DerivationGoal::tryBuildHook()
debug(format("hook reply is ‘%1%’") % reply);
- if (reply == "decline" || reply == "postpone")
- return reply == "decline" ? rpDecline : rpPostpone;
+ if (reply == "decline")
+ return rpDecline;
+ else if (reply == "decline-permanently") {
+ settings.useBuildHook = false;
+ worker.hook = 0;
+ return rpDecline;
+ }
+ else if (reply == "postpone")
+ return rpPostpone;
else if (reply != "accept")
throw Error(format("bad hook reply ‘%1%’") % reply);