* BuildInputs table: link to dependencies, include store paths.

[?]
Nov 5, 2008, 11:08 PM
GWCV3TQVFLUPBREUFRJV6ACJGQHD24NIUAVQQFURMXT3GL2SPPZAC

Dependencies

  • [2] PHX2HIVG * Store info about the build inputs in the build record.
  • [3] J5UVLXOK * Start of a basic Catalyst web interface.
  • [4] WYN733ST * Store build duration, handle cached builds.
  • [5] X27GNHDV * Basic job info in the database.
  • [6] T7AHGVGM
  • [*] N22GPKYT * Put info about logs / build products in the DB.
  • [*] 5QJP6JHS * Get dependencies from the database.

Change contents

  • edit in src/HydraFrontend/lib/HydraFrontend/Schema/Buildinputs.pm at line 22
    [2.569]
    [2.569]
    { data_type => "text", is_nullable => 0, size => undef },
    "inputid",
    { data_type => "integer", is_nullable => 0, size => undef },
    "path",
  • replacement in src/HydraFrontend/lib/HydraFrontend/Schema/Buildinputs.pm at line 36
    [2.782][2.782:924]()
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 07:10:07
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:m8eC8wnRqF6OLO7EQ7gEvg
    [2.782]
    [2.924]
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 23:48:14
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:wqjRb/WbGiyFTBcu8QId3Q
  • replacement in src/HydraFrontend/lib/HydraFrontend/Schema/Buildlogs.pm at line 28
    [3.3992][2.1059:1201]()
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 07:10:07
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:aEqSRZwHoE8HMwlUb05r+w
    [3.3992]
    [3.4134]
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 23:48:14
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:lU3XutG22RG9DJdxziFlgg
  • replacement in src/HydraFrontend/lib/HydraFrontend/Schema/Buildproducts.pm at line 28
    [3.4922][2.1202:1344]()
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 07:10:07
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:ft672+6Aile/GNGUGMsGWw
    [3.4922]
    [3.5064]
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 23:48:14
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:lfykD1HZfuy+uc7JM1sVCA
  • replacement in src/HydraFrontend/lib/HydraFrontend/Schema/Builds.pm at line 56
    [3.6194][2.1467:1609]()
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 07:10:07
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:uogJnVTVX17swfcbZgGQYg
    [3.6194]
    [3.6336]
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 23:48:14
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:bneV9O2uXIrg3Wuencuj+Q
  • replacement in src/HydraFrontend/lib/HydraFrontend/Schema/Jobsetinputs.pm at line 43
    [3.1681][2.1610:1752]()
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 07:10:07
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:q2kFjFI0X2cbHCrWi3GUCg
    [3.1681]
    [3.1823]
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 23:48:14
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:fKqDK1YOZXl88jxNRwEvSA
  • replacement in src/HydraFrontend/lib/HydraFrontend/Schema/Jobsets.pm at line 40
    [3.2992][2.1753:1895]()
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 07:10:07
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:Y3YaApHX3uowoamLrr3fAA
    [3.2992]
    [3.3134]
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 23:48:14
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:R+xsUdoLpQ7JnbZagpMqJQ
  • replacement in src/HydraFrontend/lib/HydraFrontend/Schema/Projects.pm at line 22
    [3.3685][2.1896:2038]()
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 07:10:07
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:gjIRVxp5x78v1ctQ6+ZqLg
    [3.3685]
    [3.3827]
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 23:48:14
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:PpPVJuiXpYbj8HN3sA05Gw
  • replacement in src/HydraFrontend/lib/HydraFrontend/Schema.pm at line 11
    [3.6498][2.2039:2181]()
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 07:10:07
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:uu8sYu88Z2oes5zF82ugmg
    [3.6498]
    [3.6640]
    # Created by DBIx::Class::Schema::Loader v0.04005 @ 2008-11-05 23:48:14
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:m+4HRK3Cwlb1lbJ+twj8zw
  • replacement in src/HydraFrontend/root/build.tt at line 4
    [3.7414][3.7414:7438]()
    <h1>Build [% id %]</h1>
    [3.7414]
    [2.2182]
    <h1>Job <tt>[% build.project %]:[% build.attrname %]</tt> build [% id %]</h1>
  • replacement in src/HydraFrontend/root/build.tt at line 59
    [2.2245][2.2245:2297]()
    <tr><th>Name</th><th>type</th><th>Uri</th></tr>
    [2.2245]
    [2.2297]
    <tr><th>Name</th><th>Type</th><th>What</th><th>Store path</th></tr>
  • replacement in src/HydraFrontend/root/build.tt at line 64
    [2.2375][2.2375:2476]()
    <td>[% input.name %]</td>
    <td>[% input.type %]</td>
    <td>[% input.uri %]</td>
    [2.2375]
    [2.2476]
    <td><tt>[% input.name %]</tt></td>
    <td><tt>[% input.type %]</tt></td>
    <td>
    [% IF input.type == "build" %]
    <a href="[% c.uri_for('/build' input.inputid) %]">Build [% input.inputid %]</a>
    [% ELSE %]
    <tt>[% input.uri %]</tt>
    [% END %]
    </td>
    <td><tt>[% input.path %]</tt></td>
  • edit in src/hydra.sql at line 26
    [2.2594]
    [2.2594]
  • edit in src/hydra.sql at line 33
    [2.2805]
    [2.2805]
    inputId integer, -- build ID of the input, for type == 'build'
    path text not null,
  • edit in src/hydra.sql at line 39
    [2.2929]
    [8.360]
    foreign key (inputId) references builds(id) -- ignored by sqlite
  • replacement in src/scheduler.pl at line 60
    [3.6621][2.3060:3535]()
    foreach my $input (keys %{$usedInputs}) {
    $db->resultset('Buildinputs')->create(
    { buildid => $build->id
    , name => $usedInputs->{$input}->{orig}->name
    , type => $usedInputs->{$input}->{orig}->type
    , uri => $usedInputs->{$input}->{orig}->uri
    , revision => $usedInputs->{$input}->{orig}->revision
    , tag => $usedInputs->{$input}->{orig}->tag
    });
    [3.6621]
    [2.3535]
    foreach my $inputName (keys %{$usedInputs}) {
    my $input = $usedInputs->{$inputName};
    if (defined $input->{orig}) {
    $db->resultset('Buildinputs')->create(
    { buildid => $build->id
    , name => $inputName
    , type => $input->{orig}->type
    , uri => $input->{orig}->uri
    , revision => $input->{orig}->revision
    , tag => $input->{orig}->tag
    , path => $input->{storePath}
    });
    } else {
    $db->resultset('Buildinputs')->create(
    { buildid => $build->id
    , name => $inputName
    , type => "build"
    , inputid => $input->{id}
    , path => $input->{storePath}
    });
    }
  • edit in src/scheduler.pl at line 212
    [9.1346]
    [9.1346]
    $$usedInputs{$argName} =
    { storePath => $storePath
    , id => $prevBuild->id
    };