Support testing build determinism
[?]
Dec 6, 2016, 4:46 PM
EFWDY2V7ILJBFQ6NADBESYZTPHQBXKNO5N4DPNABL7X4XMNNTNYACDependencies
- [2]
BYVRA54QTemporarily disable machines on any exception, not just connection failures - [3]
LRU7K5MWUpdate build images to be more friendly to users with color blindness. - [4]
5AIYUMTBBasic remote building - [5]
VZKB5CIEWorkaround for RemoteStore not supporting cmdBuildDerivation yet - [*]
MHVIT4JYSplit hydra-queue-runner.cc more - [*]
DKJFD6JNProcess Nix API changes - [*]
EJJCY263Account steps with preferLocalBuild as a separate system type - [*]
HJOEIMLRRefactor - [*]
BG6PEOB2Make the output size limit configurable - [*]
UNVMKJV5Unify build and step status codes - [*]
5N7LVAJNKeep track of requiredSystemFeatures in the machine stats - [*]
J5UVLXOK* Start of a basic Catalyst web interface. - [*]
24BMQDZAStart of single-process hydra-queue-runner - [*]
IK53RV4V - [*]
6KIJX24RGet rid of unnecessary [%- and -%] tags - [*]
T6KISLR6Fix indentation - [*]
N22GPKYT* Put info about logs / build products in the DB. - [*]
BD3GRK4B* Get rid of "positive failures" and separate log phases.
Change contents
- replacement in src/hydra-queue-runner/build-remote.cc at line 172
to << SERVE_MAGIC_1 << 0x202;to << SERVE_MAGIC_1 << 0x203; - edit in src/hydra-queue-runner/build-remote.cc at line 183
if (GET_PROTOCOL_MINOR(remoteVersion) < 3 && step->isDeterministic)throw Error("machine ‘%1%’ does not support deterministic builds; please upgrade it to Nix 1.12", machine->sshName); - edit in src/hydra-queue-runner/build-remote.cc at line 266
if (GET_PROTOCOL_MINOR(remoteVersion) >= 3)// FIXME: make the number of repeats configurable.to << (step->isDeterministic ? 1 : 0); - edit in src/hydra-queue-runner/build-remote.cc at line 332
break;case BuildResult::NotDeterministic:result.stepStatus = bsNotDeterministic;result.canRetry = false;result.canCache = true; - edit in src/hydra-queue-runner/queue-monitor.cc at line 421
step->isDeterministic = get(step->drv.env, "isDetermistic", "0") == "1"; - edit in src/hydra-queue-runner/state.hh at line 38
bsNotDeterministic = 12, - edit in src/hydra-queue-runner/state.hh at line 143
bool isDeterministic; - edit in src/root/build.tt at line 72
[% ELSIF step.status == 12 %]<span class="error">Non-deterministic build</span> - edit in src/root/common.tt at line 212
[% ELSIF buildstatus == 12 %]<img src="[% c.uri_for("/static/images/emojione-red-x-274c.svg") %]" height="[% size %]" width="[% size %]" title="Non-deterministic build" alt="Non-deterministic build" class="build-status" /> - edit in src/root/common.tt at line 245
[% ELSIF buildstatus == 12 %]<span class="error">Non-deterministic build</span> - edit in src/sql/hydra.sql at line 214[11.4754][20.4847]
-- 12 = build or step was not deterministic