Handle failure with output

[?]
Jun 17, 2015, 3:11 PM
WHULPA6SJJVCXISPL3GAQIRIKQN2DTUSMWGP2ECITWYMLHOON3SQC

Dependencies

  • [2] HHOMBU7G hydra-queue-runner: Implement timeouts
  • [3] U2X3Y53G make sure status images always display for a list of builds
  • [4] 3SQCOHZN * minor performance tweaks
  • [5] RYTQLATY Keep track of failed paths in the Hydra database
  • [6] T6KISLR6 Fix indentation
  • [7] OCZ4LSGG Automatically retry aborted builds
  • [8] 24BMQDZA Start of single-process hydra-queue-runner
  • [9] 62MQPRXC Pass null values to libpqxx properly
  • [10] FQQRJUO4 Mark builds as busy
  • [11] GS4SFHCP templates: Use uri_for to reference static paths.
  • [12] YBUGFKLE Use a distinct icon for cancelled builds
  • [13] 6KIJX24R Get rid of unnecessary [%- and -%] tags
  • [14] N5O7VEEO Immediately abort builds that require an unsupported system type
  • [15] 5AIYUMTB Basic remote building
  • [16] J7EE2XZA Fix a huge performance regression in the jobstatus page
  • [17] UQQ4IL55 Add a error type for "unsupported system type"
  • [*] IK53RV4V

Change contents

  • edit in src/hydra-queue-runner/build-result.cc at line 30
    [3.1182]
    [3.1182]
    Path failedFile = output + "/nix-support/failed";
    if (pathExists(failedFile)) res.failed = true;
  • edit in src/hydra-queue-runner/build-result.hh at line 20
    [3.4618]
    [3.4618]
    /* Whether this build has failed with output, i.e., the build
    finished with exit code 0 but produced a file
    $out/nix-support/failed. */
    bool failed = false;
  • edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 932
    [3.12391][3.12391:12559]()
    /* FIXME: distinguish between permanent failures (a matching
    machine doesn't exist) and temporary failures (a matching
    machine is not available). */
  • edit in src/hydra-queue-runner/hydra-queue-runner.cc at line 1047
    [3.1424][3.1424:1469]()
    // FIXME: handle failed-with-output
  • replacement in src/hydra-queue-runner/hydra-queue-runner.cc at line 1178
    [3.18052][3.18052:18078]()
    ((int) bsSuccess)
    [3.18052]
    [3.18078]
    ((int) (res.failed ? bsFailedWithOutput : bsSuccess))
  • replacement in src/root/common.tt at line 206
    [3.4180][3.568:688]()
    <img src="[% c.uri_for("/static/images/error_${size}.png") %]" alt="Failed (with result)" class="build-status" />
    [3.4180]
    [2.1617]
    <img src="[% c.uri_for("/static/images/error_${size}.png") %]" alt="Failed with output" class="build-status" />
  • replacement in src/root/common.tt at line 233
    [3.2585][3.2293:2353](),[3.2293][3.2293:2353]()
    <span class="error">Build failed (with result)</span>
    [3.2585]
    [2.1762]
    <span class="error">Build failed with output</span>