Allow a per-jobset check interval

[?]
May 2, 2013, 3:51 PM
QLOLZHRXOUSNVLJG2SWVC5EISFUOUKJIT32XN6DNW4VFFJMN5PMAC

Dependencies

  • [2] PVIRRARJ Turn hiding/unhiding a jobset into a checkbox
  • [3] PCKLFRT5 Support push notification of repository changes
  • [4] 6LETVKRA After editing a jobset, push it to the front of the evaluation queue
  • [5] EJ7C77C3 Allow searching for store and drv paths. Only does a complete match to reduce load on database.
  • [6] VS3OUK7D if no emailoverride specified, use empty string
  • [7] QTFVCDIF added hide feature for project/jobset
  • [8] FGQPXZIX hydra: make nr of build to keep configurable per jobset
  • [9] MDAIP23T hydra-evaluator: Respect triggers of disabled jobsets
  • [10] FYO6NECE hydra
  • [11] OX6NYJDV Split viewing and editing a jobset
  • [12] UMFB2767 Hydra/64: Leaving number of builds empty gives DBIx error
  • [13] X27GNHDV * Basic job info in the database.
  • [14] SB2V735V Keep track of the database schema version
  • [15] OVR2RWBI hydra-evaluator: Always pick the jobset that hasn't been evaluated longest
  • [16] JM3DPYOM generated schema with new dbix class schema loader, grrrrrr
  • [17] Y6AHH4TH Remove the logfile and logSize columns from the database
  • [18] J74UTA3I Handle the case where a jobset has never been evaluated
  • [19] RFE6T5LG * Store jobset evaluations in the database explicitly. This includes
  • [20] ODNCGFQ5 * Improved the navigation bar: don't include all projects (since that
  • [*] 3HZY24CX * Make jobsets viewable under
  • [*] N22GPKYT * Put info about logs / build products in the DB.
  • [*] KN3VYE5P * Cleaned up the foreign key constraints.
  • [*] D5QIOJGP * Move everything up one directory.

Change contents

  • replacement in src/lib/Hydra/Controller/Jobset.pm at line 209
    [2.67][6.122:183](),[6.76][6.122:183]()
    , keepnr => trim($c->request->params->{keepnr}) || 3
    [2.67]
    [4.0]
    , keepnr => int(trim($c->request->params->{keepnr})) || 3
    , checkinterval => int(trim($c->request->params->{checkinterval}))
  • edit in src/lib/Hydra/Schema/Jobsets.pm at line 101
    [6.256]
    [6.256]
    is_nullable: 0
    =head2 checkinterval
    data_type: 'integer'
    default_value: 300
  • edit in src/lib/Hydra/Schema/Jobsets.pm at line 140
    [6.21552]
    [6.2524]
    "checkinterval",
    { data_type => "integer", default_value => 300, is_nullable => 0 },
  • replacement in src/lib/Hydra/Schema/Jobsets.pm at line 263
    [6.3136][3.1945:2087]()
    # Created by DBIx::Class::Schema::Loader v0.07033 @ 2013-02-25 19:10:12
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:SvBgR0iH9NjVH4jvBATYPA
    [6.3136]
    [6.22627]
    # Created by DBIx::Class::Schema::Loader v0.07033 @ 2013-05-02 14:50:55
    # DO NOT MODIFY THIS OR ANYTHING ABOVE! md5sum:q4amPCWRoWMThnRa/n/y1w
  • edit in src/root/edit-jobset.tt at line 87
    [6.3676]
    [6.3676]
    <label class="control-label">Check interval</label>
  • edit in src/root/edit-jobset.tt at line 89
    [6.3705]
    [6.3705]
    <div class="input-append">
    <input type="number" class="span3" name="checkinterval" [% HTML.attributes(value => jobset.checkinterval) %]></input>
    <span class="add-on">sec</span>
    </div>
    <span class="help-inline">(0 to disable polling)</span>
    </div>
    </div>
    <div class="control-group">
    <div class="controls">
  • edit in src/root/jobset.tt at line 122
    [6.9311]
    [6.9311]
    </tr>
    <tr>
    <th>Check interval:</th>
    <td>[% jobset.checkinterval || "<em>disabled</em>" %]</td>
  • replacement in src/script/hydra-evaluator at line 271
    [3.2999][3.2999:3086]()
    # longest time (but don't check more often than the minimal check
    # interval).
    [3.2999]
    [3.3086]
    # longest time (but don't check more often than the jobset's
    # minimal check interval).
  • replacement in src/script/hydra-evaluator at line 275
    [3.3190][6.199:308](),[6.199][6.199:308]()
    , -or => [ 'lastcheckedtime' => undef, 'lastcheckedtime' => { '<', time() - $minCheckInterval } ] },
    [3.3190]
    [3.3191]
    , 'checkinterval' => { '!=', 0 }
    , -or => [ 'lastcheckedtime' => undef, 'lastcheckedtime' => { '<', \ (time() . " - me.checkinterval") } ] },
  • edit in src/sql/hydra.sql at line 63
    [6.1087]
    [24.5479]
    checkInterval integer not null default 300, -- minimum time in seconds between polls (0 = disable polling)
  • edit in src/sql/upgrade-12.sql at line 1
    [5.503][5.504:505]()
  • file addition: upgrade-13.sql (----------)
    [25.3004]
    alter table Jobsets add column checkInterval integer not null default 300;