* Use ->update({...}) properly.

[?]
Mar 9, 2009, 4:22 PM
NLJJZVHO3UXBURL2P7VGGCVUOMKFUYT3UX5JXQU3FFFAHUGEKO3AC

Dependencies

  • [2] ZILILXXK * Allow scheduled builds to be cancelled. They're not removed from
  • [3] D3DIBMOK * For products that are directories (like manuals), allow a default
  • [4] 7ZHHVD6Q * Inputs of type "build" must now be declared explicitly.
  • [5] A52HEFHQ * Allow builds to be restarted (if they failed with a transient error,
  • [6] B72GLND4
  • [7] BD3GRK4B * Get rid of "positive failures" and separate log phases.
  • [8] AS5PAYLI
  • [9] TLZ2SPBR
  • [10] 7UJ5YV4V * Provide a channel for each project containing all the latest
  • [11] POPU2ATH * hydra_scheduler: use eval-jobs.
  • [12] IN272KZW * Automatically keep all builds in the latest successful release in
  • [13] 7YBYT2LQ
  • [14] FPK5LF53 * Put the project-related actions in a separate controller. Put the
  • [15] 6BLUKEQ2 * Caching of "path" inputs, and fake a revision number for those.
  • [16] 6LTPI6B2
  • [17] 3ZCEPLNO
  • [18] TMP2FRIW
  • [19] L2E6EVE2 * Merged the Build and Job tables.
  • [20] AKAZKCR6 * At top-level and for each project, provide two channels: "latest"
  • [21] FDE3BJAP * Refactoring.
  • [22] ECBA3GQO * Make the schema class names match the case of the SQL table names.
  • [23] LQNBKF3D
  • [24] H7CNGK4O * Log evaluation errors etc. in the DB.
  • [25] G6HJY2V4
  • [26] JFZNAYJX * Showing releases.
  • [27] CLJQCY2X * Store info about all the build actions and allow them to be
  • [*] LBNVQXUB * Build the /build stuff in a separate controller.
  • [*] J5UVLXOK * Start of a basic Catalyst web interface.
  • [*] N22GPKYT * Put info about logs / build products in the DB.

Change contents

  • replacement in src/lib/Hydra/Controller/Build.pm at line 178
    [2.305][4.396:484](),[4.396][4.396:484]()
    $build->finished(0);
    $build->timestamp(time());
    $build->update;
    [2.305]
    [4.484]
    $build->update({finished => 0, timestamp => time});
  • replacement in src/lib/Hydra/Controller/Project.pm at line 156
    [4.6160][4.6160:6375]()
    $jobset->name($jobsetName);
    $jobset->description($description);
    $jobset->nixexprpath($nixExprPath);
    $jobset->nixexprinput($nixExprInput);
    $jobset->update;
    [4.6160]
    [4.6375]
    $jobset->update(
    { name => $jobsetName, description => $description
    , nixexprpath => $nixExprPath, nixexprinput => $nixExprInput });
  • replacement in src/lib/Hydra/Controller/Project.pm at line 190
    [4.7773][4.7773:7889]()
    $input->name($inputName);
    $input->type($inputType);
    $input->update;
    [4.7773]
    [4.7889]
    $input->update({name => $inputName, type => $inputType});
  • replacement in src/lib/Hydra/Controller/Root.pm at line 106
    [4.532][4.532:668]()
    $releaseSet->name($releaseSetName);
    $releaseSet->description(trim $c->request->params->{description});
    $releaseSet->update;
    [4.532]
    [4.93]
    $releaseSet->update(
    { name => $releaseSetName
    , description => trim $c->request->params->{description} });
  • edit in src/script/hydra_build.pl at line 33
    [4.3533]
    [4.3533]
    # Do the build.
  • replacement in src/script/hydra_build.pl at line 78
    [4.6246][4.6246:6320](),[4.6320][4.2566:2609](),[4.2609][4.6320:6355](),[4.6320][4.6320:6355]()
    $step->busy(0);
    $step->status(0);
    $step->stoptime(time);
    $step->update;
    [4.6246]
    [4.6355]
    $step->update({busy => 0, status => 0, time => 0});
  • replacement in src/script/hydra_build.pl at line 90
    [4.2643][4.2643:2898]()
    die unless $step;
    $step->busy(0);
    $step->status(1);
    $step->errormsg($4);
    $step->stoptime(time);
    $step->update;
    [4.2643]
    [4.2898]
    $step->update({busy => 0, status => 1, errormsg => $4, stoptime => time});
  • replacement in src/script/hydra_build.pl at line 129
    [4.1504][4.1504:1656]()
    $step->busy(0);
    $step->status(0);
    $step->stoptime(time);
    $step->update;
    [4.1504]
    [4.6873]
    $step->update({busy => 0, status => 0, stoptime => time});
  • replacement in src/script/hydra_build.pl at line 139
    [4.1989][4.1989:2182]()
    $step->busy(0);
    $step->status(1);
    $step->errormsg($3);
    $step->stoptime(time);
    $step->update;
    [4.1989]
    [4.2182]
    $step->update({busy => 0, status => 1, errormsg => $3, stoptime => time});
  • replacement in src/script/hydra_build.pl at line 165
    [4.4043][4.7438:7526]()
    $build->finished(1);
    $build->timestamp(time());
    $build->update;
    [4.4043]
    [4.7526]
    $build->({finished => 1, timestamp => time});
  • replacement in src/script/hydra_build.pl at line 270
    [4.7186][4.8232:8345]()
    $build->schedulingInfo->busy(1);
    $build->schedulingInfo->locker($$);
    $build->schedulingInfo->update;
    [4.7186]
    [3.3730]
    $build->schedulingInfo->update({busy => 1, locker => $$});
  • replacement in src/script/hydra_build.pl at line 286
    [4.7468][4.8474:8599]()
    $build->schedulingInfo->busy(0);
    $build->schedulingInfo->locker($$);
    $build->schedulingInfo->update;
    [4.7468]
    [4.7539]
    $build->schedulingInfo->update({busy => 0, locker => $$});
  • replacement in src/script/hydra_scheduler.pl at line 87
    [4.3607][4.3607:3699]()
    $cachedInput->lastseen(time);
    $cachedInput->update;
    [4.3607]
    [4.3699]
    $cachedInput->update({lastseen => time});
  • replacement in src/script/hydra_scheduler.pl at line 276
    [4.3056][4.3056:3165]()
    $jobset->errormsg($errorMsg);
    $jobset->errortime(time);
    $jobset->update;
    [4.3056]
    [4.3165]
    $jobset->update({errormsg => $errorMsg, errortime => time});
  • replacement in src/script/hydra_scheduler.pl at line 316
    [4.2048][4.2048:2113]()
    $jobset->lastcheckedtime(time);
    $jobset->update;
    [4.2048]
    [4.2113]
    $jobset->update({lastcheckedtime => time});