Account steps with preferLocalBuild as a separate system type

[?]
Sep 2, 2015, 11:42 AM
EJJCY263UXP4F2NAHOARQRBV2V2Z7MK7474RFNOD6LDYTCPMWIPQC

Dependencies

  • [2] 5N7LVAJN Keep track of requiredSystemFeatures in the machine stats
  • [3] IK2UBDAU Revive jobset scheduling
  • [4] MHVIT4JY Split hydra-queue-runner.cc more

Change contents

  • edit in src/hydra-queue-runner/queue-monitor.cc at line 335
    [3.31444]
    [2.296]
    auto attr = step->drv.env.find("preferLocalBuild");
    step->preferLocalBuild =
    attr != step->drv.env.end() && attr->second == "1"
    && has(localPlatforms, step->drv.platform);
  • replacement in src/hydra-queue-runner/queue-monitor.cc at line 344
    [3.31513][2.340:380](),[2.380][3.31551:31644](),[3.31551][3.31551:31644]()
    if (i != step->drv.env.end()) {
    step->requiredSystemFeatures = tokenizeString<std::set<std::string>>(i->second);
    [3.31513]
    [2.381]
    StringSet features;
    if (i != step->drv.env.end())
    features = step->requiredSystemFeatures = tokenizeString<std::set<std::string>>(i->second);
    if (step->preferLocalBuild)
    features.insert("local");
    if (!features.empty()) {
  • replacement in src/hydra-queue-runner/queue-monitor.cc at line 351
    [2.418][2.418:503]()
    step->systemType += concatStringsSep(",", step->requiredSystemFeatures);
    [2.418]
    [2.503]
    step->systemType += concatStringsSep(",", features);
  • edit in src/hydra-queue-runner/queue-monitor.cc at line 355
    [3.31651][3.31651:31848]()
    auto attr = step->drv.env.find("preferLocalBuild");
    step->preferLocalBuild =
    attr != step->drv.env.end() && attr->second == "1"
    && has(localPlatforms, step->drv.platform);