Remove the jobs status page

[?]
Aug 16, 2013, 3:16 PM
J3RYO2CUWIOO7OHRHULCZZRESUJB6W4F3GD2G7PK3V6WHKPIHWWQC

Dependencies

  • [2] 6GEU36HW Remove obsolete CSS classes
  • [3] LZVO64YG Merge in the first bits of the API work
  • [4] QTC3SYBM Jobset page: Load the jobs and status tabs on demand
  • [5] JOVVHIJX Remove all entry points to modify machines
  • [6] 2BUX775I * More release -> view.
  • [7] Q4VDOA76 Replace last 5 builds on jobset page with last 5 evaluations. Moved hide/unhide and evaluate options to jobset topmenu.
  • [8] UICHT2PS Add a search feature
  • [9] KG5AMUMG Cleanup
  • [10] TRDGNILT Remove unused file
  • [11] 3JBUMW3E forgot to commit a file
  • [12] P5X4P6VK * Renaming "release sets" to "views" (not finished yet). Having
  • [13] KKJNJHO5 Update bootstrap to 2.0.3
  • [14] U4TD3AIQ Add support for viewing jobset evaluations
  • [15] RSEGBU6C Hydra/20: Jobset clone feature
  • [16] RBNQKATL * Adding persistant releases. A release is a named set of builds.
  • [17] 64IV56HI Replace bootstrap tarball
  • [18] 6QRHXIM3 * Speed up the jobset index page. Especially the query to get the
  • [19] SMTMFEKE hydra: add missing templates
  • [20] WRIU3S5E * UI for cloning builds (not functional yet).
  • [21] EFWN7JBV * Added a status page that shows all the currently executing build steps.
  • [22] TJPIS3UP hydra: minor improvements in hydra ui
  • [23] XDDCO6CH * hydra: add dependency list with links to logfiles
  • [24] OR5SJ42Y Show releases in a tab on the project page
  • [25] JXPHAZMV Minor style changes
  • [26] JY7BXXOP Split viewing and editing a project
  • [27] VG4QG336 Remove tablesorter
  • [28] R2PON6R7 Allow non-admin users to see the machine status page
  • [29] LSZLZHJY Allow users to edit their own settings
  • [30] U72VNKRU Remove unused file
  • [31] RWFCW6ZN In the jobset evals lists, show what inputs changed between consecutive evals
  • [32] KXGOUX7P * Creating releases.
  • [33] ZWCTAZGL added newsitems, added some admin options to clear various caches.
  • [34] SZYDW2DG hydra: added some user admin
  • [35] 75XUS62Y * Added a page to quickly see all failed builds and failed evaluations
  • [36] G4X5IUYJ Remove default logo, replaced by text for now. Hide template in jobset edit.
  • [37] XKJGBVO2 Show build status for up to 100 jobs in stead of 50.
  • [38] HZWUT4YN Allow users to reproduce builds on their own systems
  • [39] UMFB2767 Hydra/64: Leaving number of builds empty gives DBIx error
  • [40] UXHP37RF set threshold to show status on jobset page to a more usable size
  • [41] NEQ4BISO Add bootstrap.zip
  • [42] OX6NYJDV Split viewing and editing a jobset
  • [43] TFK74CQR Put job status on a separate tab
  • [44] FV2M6MOT hydra: use autoconf/-make
  • [45] VH5ZABDR Add a page to show the latest evaluations for the entire server
  • [46] 3PNG7NIB Remove trailing whitespace
  • [47] 6ABZ4GQY * hydra: alphabetical order of systems in status overview
  • [48] 4UUKWXDF Jobset page: Show last evaluation time
  • [49] QL55ECJ6 - adapted ui for hydra, more in line with nixos.org website
  • [50] 6FRLEP4P first try for timeline of last 24 hours in hydra
  • [51] TNMOG2ZQ Indentation
  • [52] 36M6DGIT Show the runtime/build dependencies in the build page
  • [53] D5QIOJGP * Move everything up one directory.
  • [54] AS2OXLRM * Editing releases.
  • [55] ZI535LI6 * hydra: 'new' UI for project/jobset/job/build
  • [56] 5DSDXORD hydra: missing plain.tt
  • [57] ODNCGFQ5 * Improved the navigation bar: don't include all projects (since that
  • [58] CQTN62OH Die tabs die
  • [*] 3HZY24CX * Make jobsets viewable under

Change contents

  • replacement in src/lib/Hydra/Controller/Jobset.pm at line 154
    [4.438][4.438:575]()
    (my $latestEval) = $c->stash->{jobset}->jobsetevals->search(
    { hasnewbuilds => 1}, { limit => 1, order_by => ["id desc"] });
    [4.438]
    [4.575]
    my $latestEval = $c->stash->{jobset}->jobsetevals->search(
    { hasnewbuilds => 1}, { limit => 1, order_by => ["id desc"] })->single;
  • edit in src/lib/Hydra/Controller/Jobset.pm at line 172
    [4.832][4.832:838](),[4.838][4.1090:1092](),[4.1092][4.0:1](),[4.838][4.0:1](),[4.1][4.1093:1094](),[4.1094][3.10739:10812](),[3.10812][4.1162:1239](),[4.1162][4.1162:1239](),[4.1239][4.0:1](),[4.94][4.0:1](),[4.1][4.1240:1291](),[4.52][4.4:5](),[4.52][4.4:5](),[4.53][4.4:5](),[4.94][4.4:5](),[4.120][4.4:5](),[4.837][4.4:5](),[4.1291][4.4:5](),[4.838][4.4:5](),[4.5][4.1968:1995](),[4.1995][4.181:313](),[4.181][4.181:313](),[4.313][4.6:7](),[4.146][4.6:7](),[4.7][4.132:229](),[4.132][4.132:229](),[4.229][4.2116:2157](),[4.2157][4.267:273](),[4.267][4.267:273](),[4.273][4.8:9](),[4.9][4.1292:1915]()
    }
    }
    sub status_tab : Chained('jobsetChain') PathPart('status-tab') Args(0) {
    my ($self, $c) = @_;
    $c->stash->{template} = 'jobset-status-tab.tt';
    # FIXME: use latest eval instead of iscurrent.
    $c->stash->{systems} =
    [ $c->stash->{jobset}->builds->search({ iscurrent => 1 }, { select => ["system"], distinct => 1, order_by => "system" }) ];
    # status per system
    my @systems = ();
    foreach my $system (@{$c->stash->{systems}}) {
    push(@systems, $system->system);
    }
    my @select = ();
    my @as = ();
    push(@select, "job"); push(@as, "job");
    foreach my $system (@systems) {
    push(@select, "(select buildstatus from Builds b where b.id = (select max(id) from Builds t where t.project = me.project and t.jobset = me.jobset and t.job = me.job and t.system = '$system' and t.iscurrent = 1 ))");
    push(@as, $system);
    push(@select, "(select b.id from Builds b where b.id = (select max(id) from Builds t where t.project = me.project and t.jobset = me.jobset and t.job = me.job and t.system = '$system' and t.iscurrent = 1 ))");
    push(@as, "$system-build");
  • edit in src/lib/Hydra/Controller/Jobset.pm at line 173
    [4.62][4.266:267](),[4.266][4.266:267](),[4.267][4.1916:2225]()
    $c->stash->{activeJobsStatus} = [
    $c->model('DB')->resultset('ActiveJobsForJobset')->search(
    {},
    { bind => [$c->stash->{project}->name, $c->stash->{jobset}->name]
    , select => \@select
    , as => \@as
    , order_by => ["job"]
    }) ];
  • file deletion: jobset-status-tab.tt (----------)
    [4.1486][4.3785:3829](),[4.3829][4.2884:2884]()
    [% PROCESS common.tt %]
    <table class="table table-striped table-condensed">
    <thead><tr><th>Job</th>[% FOREACH s IN systems %]<th>[% s.system %]</th>[% END %]</tr></thead>
    <tbody>
    [% FOREACH j IN activeJobsStatus %]
    <tr>
    <td>[% INCLUDE renderJobName project=project.name jobset = jobset.name job = j.get_column('job') %]</td>
    [% FOREACH s IN systems %]
    [% system = s.system %]
    [% systemStatus = j.get_column(system) %]
    <td class="centered">
    [% IF systemStatus != undef %]
    <a href="[% c.uri_for('/build' j.get_column(system _ '-build') ) %]">
    [% INCLUDE renderBuildStatusIcon buildstatus=systemStatus size=16 %]
    </a>
    [% END %]
    </td>
    [% END %]
    </tr>
    [% END %]
    </tbody>
    </table>
  • edit in src/root/jobset.tt at line 48
    [4.6829][4.143:210]()
    <li><a href="#tabs-status" data-toggle="tab">Job status</a></li>
  • edit in src/root/jobset.tt at line 93
    [4.13217][4.3890:4003](),[4.4003][4.1987:1988](),[4.8485][4.1987:1988](),[4.25001][4.1987:1988]()
    [% INCLUDE makeLazyTab tabName="tabs-status" uri=c.uri_for('/jobset' project.name jobset.name "status-tab") %]