Add one-shot jobsets
[?]
Oct 11, 2013, 10:01 AM
C3AG65SWAGDSML5MBD4ZPRCHI2LNNDN6IQZOI3HLYRJRPAW3QPAACDependencies
- [2]
4QCXGR4WTabify the eval page - [3]
2G63HKCHFix some wellformedness issues - [4]
GEADFVZ5hydra-queue-runner: Improved scheduling - [5]
CQQSJLONOn aggregate job pages, show a matrix showing all the constituent builds - [6]
R6B5CAFFLet Builds.timestamp refer to the time the build was added - [7]
MOX7XJ2EMerge the BuildSchedulingInfo table into the Builds table - [8]
J74UTA3IHandle the case where a jobset has never been evaluated - [9]
2YXO5ZGQHydra/28: Rename "scheduler" to "evaluator" - [10]
AFTXA575* $HYDRA_DATA environment variable. - [11]
CQTN62OHDie tabs die - [12]
ODNCGFQ5* Improved the navigation bar: don't include all projects (since that - [13]
4D4U5IPY* Allow jobsets to be disabled. - [14]
QLOLZHRXAllow a per-jobset check interval - [15]
JFZNAYJX* Showing releases. - [16]
K22TMPH5Make the info tables less compressed - [17]
AMI4DGBKDon't trigger evaluation of disabled jobsets - [18]
TQVKZQUGUse the REST API in the web interface for editing jobsets - [19]
OX6NYJDVSplit viewing and editing a jobset - [20]
3BTJRSU3GitInput.pm: Don't do a chdir to the Git clone - [21]
2QISRMJKJob page: show queued as well as running builds - [22]
XJRJ4J7MAdd user registration - [23]
6HWHYPSWAdd an action menu to evaluations - [24]
6Q2JPSWGFix lazy tab loading - [25]
3PNG7NIBRemove trailing whitespace - [26]
2P7VNAACMove common Javascript code into a separate file - [27]
LZVO64YGMerge in the first bits of the API work - [28]
PCKLFRT5Support push notification of repository changes - [29]
PVIRRARJTurn hiding/unhiding a jobset into a checkbox - [30]
UOINKJ2JAdd an action to cancel all builds in a jobset eval - [31]
KN3VYE5P* Cleaned up the foreign key constraints. - [32]
OOQ2D3KC* Refactoring: move fetchInput out of hydra_scheduler into a separate - [33]
FYO6NECEhydra - [*]
DEMSSSB2* Controller for jobs which inherits all actions in ListBuilds. So - [*]
3HZY24CX* Make jobsets viewable under - [*]
J5UVLXOK* Start of a basic Catalyst web interface. - [*]
2GK5DOU7* Downloading closures. - [*]
N22GPKYT* Put info about logs / build products in the DB. - [*]
RFE6T5LG* Store jobset evaluations in the database explicitly. This includes - [*]
S6OISBQ3* Mark the "current" builds in a jobset, i.e. those corresponding to
Change contents
- replacement in src/lib/Hydra/Controller/Job.pm at line 34[5.66]→[5.1958:1992](∅→∅),[5.1917]→[5.1958:1992](∅→∅),[5.1958]→[5.1958:1992](∅→∅),[5.1992]→[5.919:969](∅→∅),[5.969]→[5.1813:1860](∅→∅),[5.2049]→[5.1813:1860](∅→∅),[5.1813]→[5.1813:1860](∅→∅),[5.1860]→[5.1918:1967](∅→∅)
{ join => ['project'], order_by => ["priority DESC", "id"], '+select' => ['project.enabled'], '+as' => ['enabled']}{ order_by => ["priority DESC", "id"] } - replacement in src/lib/Hydra/Controller/Jobset.pm at line 200
my $enabled = defined $c->stash->{params}->{enabled};my $enabled = int($c->stash->{params}->{enabled});die if $enabled < 0 || $enabled > 2; - replacement in src/lib/Hydra/Controller/Jobset.pm at line 208
, enabled => $enabled ? 1 : 0, enabled => $enabled - replacement in src/lib/Hydra/Controller/Root.pm at line 77
{finished => 0}, { join => ['project'], order_by => ["priority DESC", "id"], columns => [@buildListColumns], '+select' => ['project.enabled'], '+as' => ['enabled'] })]{finished => 0}, { order_by => ["priority DESC", "id"], columns => [@buildListColumns] })] - replacement in src/lib/Hydra/Helper/Nix.pm at line 543
{ 'project.enabled' => 1, 'me.enabled' => 1 },{ 'project.enabled' => 1, 'me.enabled' => { '!=' => 0 } }, - edit in src/root/edit-jobset.tt at line 52
<label class="control-label">State</label> - replacement in src/root/edit-jobset.tt at line 54[5.2551]→[5.2551:2584](∅→∅),[5.2584]→[3.1150:1257](∅→∅),[3.1257]→[5.2698:2715](∅→∅),[5.2698]→[5.2698:2715](∅→∅)
<label class="checkbox"><input type="checkbox" name="enabled" [% IF jobset.enabled; 'checked="checked"'; END %]/>Enabled</label><div class="btn-group" data-toggle="buttons-radio"><input type="hidden" name="enabled" value="[% jobset.enabled %]" /><button type="button" class="btn" value="1">Enabled</button><button type="button" class="btn" value="2">One-shot</button><button type="button" class="btn" value="0">Disabled</button></div> - edit in src/root/edit-jobset.tt at line 61
</div><div class="control-group"> - edit in src/root/jobset.tt at line 119
<tr><th>State:</th><td>[% IF jobset.enabled == 0; "Disabled"; ELSIF jobset.enabled == 1; "Enabled"; ELSIF jobset.enabled == 2; "One-shot"; END %]</td></tr> - edit in src/root/jobset.tt at line 133
</tr><tr><th>Enabled:</th><td>[% jobset.enabled ? "Yes" : "No" %]</td> - replacement in src/root/static/js/common.js at line 72
})});/* Automatically set Bootstrap radio buttons from hidden form controls. */$('div[data-toggle="buttons-radio"] input[type="hidden"]').map(function(){$('button[value="' + $(this).val() + '"]', $(this).parent()).addClass('active');});/* Automatically update hidden form controls from Bootstrap radio buttons. */$('div[data-toggle="buttons-radio"] .btn').click(function(){$('input', $(this).parent()).val($(this).val());}); - edit in src/script/hydra-evaluator at line 249[40.6544][41.5850]
# If this is a one-shot jobset, disable it now.$jobset->update({ enabled => 0 }) if $jobset->enabled == 2; - replacement in src/script/hydra-evaluator at line 311
{ 'project.enabled' => 1, 'me.enabled' => 1,{ 'project.enabled' => 1, 'me.enabled' => { '!=' => 0 }, - replacement in src/sql/hydra.sql at line 58
enabled integer not null default 1,enabled integer not null default 1, -- 0 = disabled, 1 = enabled, 2 = one-shot