Fix build

This commit is contained in:
Eelco Dolstra 2020-07-08 12:50:02 +02:00
parent 6c9e407bee
commit 7985757a1d
No known key found for this signature in database
GPG key ID: 8170B4726D7198DE
6 changed files with 11 additions and 16 deletions

View file

@ -270,7 +270,7 @@ int main(int argc, char * * argv)
return handleExceptions(argv[0], [&]() {
auto config = std::make_unique<::Config>();
auto config = std::make_unique<HydraConfig>();
auto nrWorkers = config->getIntOption("evaluator_workers", 1);
maxMemorySize = config->getIntOption("evaluator_max_memory_size", 4096);
@ -472,11 +472,7 @@ int main(int argc, char * * argv)
auto h = hashDerivationModulo(*store, drv, true);
auto outPath = store->makeOutputPath("out", h, drvName);
drv.env["out"] = store->printStorePath(outPath);
drv.outputs.insert_or_assign("out", DerivationOutput {
.path = outPath,
.hashAlgo = "",
.hash = ""
});
drv.outputs.insert_or_assign("out", DerivationOutput { .path = outPath });
auto newDrvPath = store->printStorePath(writeDerivation(store, drv, drvName));
debug("rewrote aggregate derivation %s -> %s", drvPath, newDrvPath);

View file

@ -24,7 +24,7 @@ enum class EvaluationStyle
struct Evaluator
{
std::unique_ptr<Config> config;
std::unique_ptr<HydraConfig> config;
nix::Pool<Connection> dbPool;
@ -57,7 +57,7 @@ struct Evaluator
const time_t notTriggered = std::numeric_limits<time_t>::max();
Evaluator()
: config(std::make_unique<::Config>())
: config(std::make_unique<HydraConfig>())
, maxEvals(std::max((size_t) 1, (size_t) config->getIntOption("max_concurrent_evals", 4)))
{ }

View file

@ -46,7 +46,7 @@ std::string getEnvOrDie(const std::string & key)
State::State()
: config(std::make_unique<::Config>())
: config(std::make_unique<HydraConfig>())
, maxUnsupportedTime(config->getIntOption("max_unsupported_time", 0))
, dbPool(config->getIntOption("max_db_connections", 128))
, memoryTokens(config->getIntOption("nar_buffer_size", getMemSize() / 2))

View file

@ -272,7 +272,7 @@ bool State::getQueuedBuilds(Connection & conn,
try {
createBuild(build);
} catch (Error & e) {
e.addPrefix(fmt("while loading build %1%: ", build->id));
e.addTrace({}, hintfmt("while loading build %d: ", build->id));
throw;
}
@ -458,8 +458,7 @@ Step::ptr State::createStep(ref<Store> destStore,
for (auto & i : step->drv->outputs)
if (!destStore->isValidPath(i.second.path)) {
valid = false;
missing.insert_or_assign(i.first,
DerivationOutput { i.second.path, i.second.hashAlgo, i.second.hash });
missing.insert_or_assign(i.first, i.second);
}
/* Try to copy the missing paths from the local store or from

View file

@ -292,14 +292,14 @@ struct Machine
};
class Config;
class HydraConfig;
class State
{
private:
std::unique_ptr<Config> config;
std::unique_ptr<HydraConfig> config;
// FIXME: Make configurable.
const unsigned int maxTries = 5;

View file

@ -4,11 +4,11 @@
#include "util.hh"
struct Config
struct HydraConfig
{
std::map<std::string, std::string> options;
Config()
HydraConfig()
{
using namespace nix;