aboutsummaryrefslogtreecommitdiff
path: root/src/libstore/parsed-derivations.cc
diff options
context:
space:
mode:
authorregnat <rg@regnat.ovh>2021-06-11 08:37:59 +0200
committerregnat <rg@regnat.ovh>2021-06-11 09:12:53 +0200
commit7c077d2a0f4ccdeb84a4ad14ba5871a3fbe170e4 (patch)
treebfc613d5e8c4675f37486949c766a3d7ea66a8da /src/libstore/parsed-derivations.cc
parent8e6ee1b9e924fbbbeb5594eb89e7a570f36ab6e1 (diff)
Add a ca-derivations required machine feature
Make ca-derivations require a `ca-derivations` machine feature, and ca-aware builders expose it. That way, a network of builders can mix ca-aware and non-ca-aware machines, and the scheduler will send them in the right place.
Diffstat (limited to 'src/libstore/parsed-derivations.cc')
-rw-r--r--src/libstore/parsed-derivations.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/libstore/parsed-derivations.cc b/src/libstore/parsed-derivations.cc
index c5c3ae3dc..5e383a9a4 100644
--- a/src/libstore/parsed-derivations.cc
+++ b/src/libstore/parsed-derivations.cc
@@ -91,6 +91,8 @@ StringSet ParsedDerivation::getRequiredSystemFeatures() const
StringSet res;
for (auto & i : getStringsAttr("requiredSystemFeatures").value_or(Strings()))
res.insert(i);
+ if (!derivationHasKnownOutputPaths(drv.type()))
+ res.insert("ca-derivations");
return res;
}