Cleanup build serialization

[?]
Oct 24, 2013, 7:47 PM
2DGIP6L44ATZLSC4CED35PCHHSBJ4PYUZKNPNCE7OZGB5R2DYR3AC

Dependencies

  • [2] WRGX7LLQ Add some more fields to the JSON output of /build
  • [3] MQYHIUEE Cleanup eval serialization
  • [4] LBNVQXUB * Build the /build stuff in a separate controller.
  • [5] LZVO64YG Merge in the first bits of the API work
  • [6] YI3BZG5N Cleanup Jobset serialization
  • [7] SYLVCTT6 Start api cleanup with the User model
  • [8] UYWFRWQ6 Sort constituents by job name
  • [9] FU4GO5VN On build pages, provide a link to the build's first eval
  • [10] ZH6B56XR Try harder to find build logs
  • [11] 7ECJWNVX Cleanup Project model
  • [12] 4VYSDP4I Add eager fetching of relations and enable that for jobset->jobsetinputs
  • [*] J5UVLXOK * Start of a basic Catalyst web interface.
  • [*] VVOAXWH4 fix wrong dbix:class:loader generation

Change contents

  • replacement in src/lib/Hydra/Controller/Build.pm at line 101
    [4.4315][4.4315:4684](),[4.4684][2.0:127](),[2.127][4.4684:4717](),[4.4684][4.4684:4717]()
    entity => $c->model('DB::Builds')->find($build->id,{
    columns => [
    'id',
    'finished',
    'timestamp',
    'buildstatus',
    'job',
    'project',
    'jobset',
    'starttime',
    'stoptime',
    'nixname',
    'description',
    'drvpath',
    'system',
    ]
    })
    [4.4315]
    [4.4717]
    entity => $build
  • edit in src/lib/Hydra/Schema/Builds.pm at line 604
    [15.1222]
    [14.6337]
    my %hint = (
    columns => [
    "job",
    "finished"
    ]
    );
    sub json_hint {
    return \%hint;
    }
  • replacement in tests/api-test.pl at line 3
    [4.36481][3.407:437](),[4.142][4.2064:2095](),[4.386][4.2064:2095](),[3.437][4.2064:2095](),[4.474][4.2064:2095](),[4.2064][4.2064:2095]()
    use Test::Simple tests => 13;
    #use Test::Simple tests => 15;
    [4.36481]
    [4.36511]
    use Test::Simple tests => 15;
  • replacement in tests/api-test.pl at line 62
    [3.710][3.710:725](),[3.725][4.39556:39678](),[4.39556][4.39556:39678]()
    =begin comment
    my $build = decode_json(request_json({ uri => "/build/" . $evals->[0]->{jobsetevalmembers}->[0]->{build} })->content());
    [3.710]
    [4.39678]
    my $build = decode_json(request_json({ uri => "/build/" . $evals->[0]->{eval}->{builds}->[0] })->content());
  • edit in tests/api-test.pl at line 65
    [4.39798][4.2255:2275]()
    =end comment
    =cut