hydra-queue-runner: don't try to distribute builds on localhost
[?]
May 3, 2020, 4:05 AM
H46LUUZY3N7DDOIZFDZ7SJP76BICH4G6Z4SC7GBPMIKHW2JPZRTACDependencies
- [2]
WV4SSAIYBuild against nix-master - [3]
EBJP3MNABuild against nix-master - [4]
2GRQJZT6hydra-queue-runner: Support running in a NixOS container - [5]
BG6PEOB2Make the output size limit configurable - [6]
FJCKDJKBAcquire the send lock only while actually sending - [7]
GS4BE6TBAsynchronously compress build logs - [8]
A2GL5FOZMoar stats - [9]
2BPAQMDHhydra-queue-runner: better error message if nix-store can not be started - [10]
7VQ4ALFYUpdate "make check" for the new queue runner - [11]
CNLNT3T4Allow only 1 thread to send a closure to a given machine at the same time - [12]
6TY4LNHHFinish copyClosure - [13]
NAYQT2GThydra-queue-runner: Use cmdBuildDerivation - [14]
4VYY2ADPAllow the machines file to specify host public keys - [15]
UVNTWTWGPrevent download of NARs we just uploaded - [16]
5AIYUMTBBasic remote building - [17]
FITVNQ2SKeep track of the time we spend copying to/from build machines - [18]
73YR46NJhydra-queue-runner: Write directly to a binary cache - [19]
OJFOBJKFAdd FIXME - [20]
XCDTFZUYhydra-queue-runner: Fix build - [21]
OKEMZJLSBump Nix - [22]
LSUX6IQRUpdate to latest nixUnstable - [23]
LE4VZIY5More stats - [24]
SL3WSRAChydra-queue-runner: Limit memory usage - [25]
4NU5JJFDTruncate the log just before starting the remote build - [26]
G7KWXSFMDistinguish build step states - [27]
BYVRA54QTemporarily disable machines on any exception, not just connection failures - [28]
MB3TISH2Rate-limit the number of threads copying closures at the same time - [29]
6EO3HVNAMerge remote-tracking branch 'origin/master' into binary-cache - [30]
DKJFD6JNProcess Nix API changes - [31]
N4IROACVMove buildRemote() into State
Change contents
- replacement in src/hydra-queue-runner/build-remote.cc at line 53
argv = {"nix-store", "--serve", "--write"};argv = {"nix-store", "--builders", "", "--serve", "--write"}; - edit in src/hydra-queue-runner/build-remote.cc at line 85
FdSource & from, FdSink & to, const StorePathSet & paths, - edit in src/hydra-queue-runner/build-remote.cc at line 89
StorePathSet closure; - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 89
- edit in src/hydra-queue-runner/build-remote.cc at line 99
to << cmdQueryValidPaths << 1 << useSubstitutes;writeStorePaths(*destStore, to, closure); - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 99
- edit in src/hydra-queue-runner/build-remote.cc at line 103
auto present = readStorePaths<StorePathSet>(*destStore, from); - edit in src/hydra-queue-runner/build-remote.cc at line 107
auto sorted = destStore->topoSortPaths(closure); - edit in src/hydra-queue-runner/build-remote.cc at line 109
StorePathSet missing; - edit in src/hydra-queue-runner/build-remote.cc at line 112
if (!present.count(*i)) missing.insert(i->clone()); - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 112
- edit in src/hydra-queue-runner/build-remote.cc at line 136
string base(step->drvPath.to_string()); - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 136
- edit in src/hydra-queue-runner/build-remote.cc at line 221
StorePathSet inputs;BasicDerivation basicDrv(*step->drv); - edit in src/hydra-queue-runner/build-remote.cc at line 225
inputs.insert(step->drvPath.clone()); - edit in src/hydra-queue-runner/build-remote.cc at line 229
for (auto & p : step->drv->inputSrcs)inputs.insert(p.clone()); - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 229
- edit in src/hydra-queue-runner/build-remote.cc at line 230
for (auto & input : step->drv->inputDrvs) {Derivation drv2 = readDerivation(*localStore, localStore->printStorePath(input.first)); - edit in src/hydra-queue-runner/build-remote.cc at line 237
inputs.insert(i->second.path.clone());basicDrv.inputSrcs.insert(i->second.path.clone()); - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 237
- edit in src/hydra-queue-runner/build-remote.cc at line 246
copyClosure(ref<Store>(localStore), destStore, step->drv->inputSrcs, NoRepair, NoCheckSigs); - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 246
- edit in src/hydra-queue-runner/build-remote.cc at line 252
printMsg(lvlDebug, "sending closure of ‘%s’ to ‘%s’",localStore->printStorePath(step->drvPath), machine->sshName); - edit in src/hydra-queue-runner/build-remote.cc at line 277
printMsg(lvlDebug, "building ‘%s’ on ‘%s’",localStore->printStorePath(step->drvPath),machine->sshName); - edit in src/hydra-queue-runner/build-remote.cc at line 283
if (sendDerivation) {to << cmdBuildPaths;writeStorePaths(*localStore, to, singleton(step->drvPath));} else {to << cmdBuildDerivation << localStore->printStorePath(step->drvPath);writeDerivation(to, *localStore, basicDrv);} - edit in src/hydra-queue-runner/build-remote.cc at line 390
printMsg(lvlInfo, "outputs of ‘%s’ substituted or already valid on ‘%s’",localStore->printStorePath(step->drvPath), machine->sshName); - edit in src/hydra-queue-runner/build-remote.cc at line 406
auto outputs = step->drv->outputPaths(); - edit in src/hydra-queue-runner/build-remote.cc at line 412
to << cmdQueryPathInfos;writeStorePaths(*localStore, to, outputs); - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 412
- edit in src/hydra-queue-runner/build-remote.cc at line 426
printMsg(lvlDebug, "copying outputs of ‘%s’ from ‘%s’ (%d bytes)",localStore->printStorePath(step->drvPath), machine->sshName, totalNarSize); - edit in src/hydra-queue-runner/build-remote.cc at line 441
printMsg(lvlError, "warning: had to wait %d ms for %d memory tokens for %s",resMs, totalNarSize, localStore->printStorePath(step->drvPath)); - edit in src/hydra-queue-runner/build-remote.cc at line 446
to << cmdExportPaths << 0;writeStorePaths(*localStore, to, outputs); - resolve order conflict in src/hydra-queue-runner/build-remote.cc at line 446