* hydra: layout changes

[?]
Feb 24, 2010, 3:06 PM
ELABMHJIZYVLS4JFM36XS4YS4UP32NPFCTUWX5XOKBL6S5FIB3UQC

Dependencies

  • [2] MAOFG2TD * Allow omitting the product number if there is only one product in a
  • [3] SPXPP5L6
  • [4] 6KXFPPX3
  • [5] TEZTE7QT bigger min-height, max-width for page
  • [6] 6JR2WT6D * hydra: show queue optimization
  • [7] TJPIS3UP hydra: minor improvements in hydra ui
  • [8] 2R7GHSA4 * hydra: added initial version of build graph
  • [9] 4S4ZMFJK * Links on trs.
  • [10] MFHM3RLC * Add an icon for PDFs.
  • [11] UVMFS73T * Some jQuery / CSS hackery.
  • [12] BA46C5LN * Pretty-print the logs.
  • [13] MOCEUXZA * Support serving products that are directories (such as manuals or
  • [14] GNIEG2GC * Disambiguate jobs by jobset name. I.e. jobs with the same name in
  • [15] ZI535LI6 * hydra: 'new' UI for project/jobset/job/build
  • [16] QZLMDKMU * Queue runner: don't start scheduled builds builds if they belong to
  • [17] W6DC6K4I * Happy Javascript hacking.
  • [18] JD27RBKM
  • [19] JFZNAYJX * Showing releases.
  • [20] 7YBYT2LQ
  • [21] C4RV47LW
  • [22] QL55ECJ6 - adapted ui for hydra, more in line with nixos.org website
  • [23] H7CNGK4O * Log evaluation errors etc. in the DB.
  • [24] XHVZXX6N
  • [25] S5PV6IIM * Represent jobs explicitly in the DB.
  • [26] S66BOMVU * Added authentication.
  • [27] FKK2ZSTL * Split the CSS.
  • [28] SMM4HQTP * Put actions related to builds under /build (e.g. /log/<buildid>
  • [29] IIDX526D
  • [30] Y35C6GHH * One-click installs.
  • [31] US27ZTX5 * HydraFrontend -> Hydra.
  • [32] TQKGQ5R3
  • [33] JLICHVE6 * hydra: do not show build history if there are no previous builds
  • [34] LBNVQXUB * Build the /build stuff in a separate controller.
  • [35] JRU2LRPZ
  • [36] VVDQKVNL
  • [37] CLJQCY2X * Store info about all the build actions and allow them to be
  • [38] HK32XC42
  • [39] ODNCGFQ5 * Improved the navigation bar: don't include all projects (since that
  • [40] SZZ3PFYF
  • [41] 2AUODJBT
  • [42] DVNWJXWW * Generic declaration of build products.
  • [43] IK53RV4V
  • [44] I35CIZI7
  • [45] 2GK5DOU7 * Downloading closures.
  • [46] UHANDRAR * Closure downloads: don't include the product number; it's not needed.
  • [47] M3WSK4CB
  • [48] D5QIOJGP * Move everything up one directory.
  • [49] YTZOC7C5 * Editing of jobset inputs.
  • [50] TW5ZQX5Z * Move up the build products in the builds page, since they're more
  • [51] HJLYC753 * Adding input value alternatives.
  • [52] J5UVLXOK * Start of a basic Catalyst web interface.
  • [53] BD3GRK4B * Get rid of "positive failures" and separate log phases.
  • [54] B72GLND4
  • [55] NDL67SQT * XHTML validity.
  • [56] TP3PFR5K
  • [57] L7LFU6IQ * Make build steps clickable as well.
  • [58] JLDUSNUO * Unify rendering of finished and scheduled builds.
  • [59] 5NO7NCKT * Refactoring.
  • [60] FZVIDIEP
  • [61] 63KXN4QQ
  • [62] K5BEBWKM

Change contents

  • replacement in src/root/build.tt at line 96
    [8.843][9.4285:4318](),[9.4285][9.4285:4318]()
    <table class="statusTable">
    [8.843]
    [9.4318]
    <table class="layoutTable">
  • replacement in src/root/common.tt at line 64
    [9.737][9.0:40]()
    <table class="buildList tablesorter">
    [9.737]
    [9.767]
    <table class="buildList tablesorter[% IF !showSchedulingInfo %] queue[% END %]">
  • edit in src/root/common.tt at line 72
    [9.916]
    [9.147]
    <th></th>
  • edit in src/root/common.tt at line 108
    [9.1669]
    [6.171]
    <td>[% IF build.get_column('busy') %]<img src="/static/images/running.gif" alt="Running" />[% ELSIF build.get_column('disabled') == 1 || build.get_column('enabled') == 0 %]Disabled[% END %]</td>
  • replacement in src/root/jobset.tt at line 109
    [9.20737][9.20737:20776]()
    <table class="activeJobsStatus">
    [9.20737]
    [9.20776]
    <table>
  • replacement in src/root/jobset.tt at line 119
    [9.21308][9.21308:21329]()
    <td>
    [9.21308]
    [9.21329]
    <td class="centered">
  • replacement in src/root/product-list.tt at line 9
    [2.327][9.3131:3158](),[9.3131][9.3131:3158]()
    <ul class="productList">
    [2.327]
    [9.3158]
    <table class="productList layoutTable">
  • replacement in src/root/product-list.tt at line 23
    [9.924][9.924:951]()
    <li class="product">
    [9.924]
    [9.483]
    <tr class="product">
    <td>
  • replacement in src/root/product-list.tt at line 49
    [9.2083][9.2083:2095]()
    </li>
    [9.2083]
    [9.2095]
    </td>
    </tr>
  • replacement in src/root/product-list.tt at line 52
    [9.2096][9.2096:2123]()
    <li class="product">
    [9.2096]
    [9.2123]
    <tr class="product">
    <td>
  • replacement in src/root/product-list.tt at line 88
    [9.2480][9.2480:2492]()
    </li>
    [9.2480]
    [9.4384]
    </td>
    </tr>
  • replacement in src/root/product-list.tt at line 94
    [9.2502][9.2502:2529]()
    <li class="product">
    [9.2502]
    [9.2427]
    <tr class="product">
    <td>
  • replacement in src/root/product-list.tt at line 142
    [9.5926][9.2530:2542]()
    </li>
    [9.5926]
    [9.5926]
    </td>
    </tr>
  • replacement in src/root/product-list.tt at line 148
    [9.2550][9.2550:2577]()
    <li class="product">
    [9.2550]
    [9.2532]
    <tr class="product">
    <td>
  • replacement in src/root/product-list.tt at line 159
    [9.6338][9.2578:2590]()
    </li>
    [9.6338]
    [9.6338]
    </td>
    </tr>
  • replacement in src/root/product-list.tt at line 164
    [9.6363][9.2591:2618]()
    <li class="product">
    [9.6363]
    [9.2562]
    <tr class="product">
    <td>
  • replacement in src/root/product-list.tt at line 183
    [9.6793][9.2619:2631]()
    </li>
    [9.6793]
    [9.6793]
    </td>
    </tr>
  • replacement in src/root/product-list.tt at line 188
    [9.2639][9.2639:2666]()
    <li class="product">
    [9.2639]
    [9.6819]
    <tr class="product">
    <td>
  • replacement in src/root/product-list.tt at line 191
    [9.6873][9.2667:2679]()
    </li>
    [9.6873]
    [9.6873]
    </td>
    </tr>
  • replacement in src/root/product-list.tt at line 198
    [9.6916][9.6916:6924]()
    </ul>
    [9.6916]
    [9.6924]
    </table>
  • edit in src/root/queue.tt at line 15
    [9.164][9.164:165](),[9.165][9.183:349]()
    <p>Note: Builds in <span class="runningBuild">red</span> are
    currently executing. Builds in <span
    class="disabledBuild">grey</span> are currently disabled.</p>
  • replacement in src/root/static/css/hydra.css at line 1
    [9.8691][9.30777:30870]()
    #generic-tabs li {
    height : 30px;
    font-size : 90%;
    }
    #generic-tabs {
    min-height: 30em;
    [9.8691]
    [9.30870]
    body {
    font-family: sans-serif;
    background: white;
    margin: 2em 1em 2em 1em;
  • edit in src/root/static/css/hydra.css at line 6
    [9.30872][9.30872:30912]()
    #generic-tabs div {
    font-size : 90%;
    }
  • replacement in src/root/static/css/hydra.css at line 8
    [9.169][9.3699:3715]()
    width: 8em;
    [9.169]
    [9.8897]
    width: 8em;
  • replacement in src/root/static/css/hydra.css at line 11
    [9.8900][9.30914:30949]()
    .statusTable td, .statusTable th {
    [9.8900]
    [9.30949]
    img {
  • replacement in src/root/static/css/hydra.css at line 15
    [9.30976][9.265:286](),[9.197][9.265:286](),[9.286][9.224:255](),[9.224][9.224:255](),[9.255][9.287:308]()
    tr.clickable:hover {
    background-color: #a0a0f0;
    cursor: pointer;
    [9.30976]
    [9.494]
    a { text-decoration: none;}
    a:link { color: #0048b3; }
    a:visited { color: #002a6a; }
    a.no-hover:hover { background: none; }
    a:hover, a:visited:hover { text-decoration: underline;}
    a.smallLink {
    font-size: 60%;
    vertical-align: top;
    }
    a#error-link {
    color: red;
  • replacement in src/root/static/css/hydra.css at line 28
    [9.4917][9.4917:4976]()
    .layoutTable td, .layoutTable th {
    border-style: none;
    [9.497]
    [9.30977]
    table {
    empty-cells: show;
    border-spacing: 1px;
  • replacement in src/root/static/css/hydra.css at line 35
    [9.9137][9.8744:8787]()
    .layoutTable th {
    vertical-align: top;
    [9.8705]
    [9.31000]
    th, td {
    border: 1px solid #dddddd;
  • replacement in src/root/static/css/hydra.css at line 39
    [9.31003][9.31003:31086]()
    .activeJobsStatus td, .activeJobsStatus th {
    border-style: 1px dotted #CCCCCC;
    [9.31003]
    [9.31086]
    th {
    background-color:#E6EEEE;
  • replacement in src/root/static/css/hydra.css at line 43
    [9.31089][9.31089:31140]()
    .activeJobsStatus tbody tr td {
    align: center;
    [9.31089]
    [9.9167]
    table.tablesorter tr:nth-child(even) {
    background-color: #efefef;
  • replacement in src/root/static/css/hydra.css at line 47
    [9.23377][9.23377:23436]()
    a.smallLink {
    font-size: 60%;
    vertical-align: top;
    [9.9170]
    [9.10386]
    tr.clickable:hover {
    background-color: #E6EEFF;
    cursor: pointer;
    }
    td.centered {
    text-align: center;
  • replacement in src/root/static/css/hydra.css at line 55
    [9.10576][9.4689:4702](),[9.4702][9.10593:10609](),[9.10593][9.10593:10609](),[9.10609][9.0:27]()
    .error-msg {
    color: red;
    white-space: pre-wrap;
    [9.10389]
    [7.1104]
    .layoutTable td, .layoutTable th {
    border-style: none;
  • replacement in src/root/static/css/hydra.css at line 60
    [7.1107][7.1107:1139]()
    a#error-link {
    color: red;
    [7.1107]
    [9.10609]
    table.tablesorter thead tr .header {
    background-image: url(/static/js/tablesorter/themes/blue/bg.gif);
    background-repeat: no-repeat;
    background-position: center right;
    cursor: pointer;
  • replacement in src/root/static/css/hydra.css at line 67
    [9.10612][9.3426:3474]()
    .error {
    color: red;
    font-weight: bold;
    [9.10612]
    [9.3474]
    table.tablesorter thead tr .headerSortUp {
    background-image: url(/static/js/tablesorter/themes/blue/asc.gif);
  • replacement in src/root/static/css/hydra.css at line 71
    [9.3477][9.10612:10676](),[9.10612][9.10612:10676](),[9.10676][9.298:325]()
    pre.buildlog {
    border: 1px solid black;
    padding: 0.3em;
    white-space: pre-wrap;
    [9.3477]
    [9.247]
    table.tablesorter thead tr .headerSortDown {
    background-image: url(/static/js/tablesorter/themes/blue/desc.gif);
  • replacement in src/root/static/css/hydra.css at line 75
    [9.250][9.542:606]()
    div.buildlog {
    border: 1px solid black;
    padding: 0.3em;
    [9.250]
    [9.606]
    table.tablesorter thead tr .headerSortDown, table.tablesorter thead tr .headerSortUp {
    background-color: #D6DDDD;
  • replacement in src/root/static/css/hydra.css at line 79
    [9.609][9.5653:5731]()
    .multiLineMsg {
    padding: 0em;
    margin: 0em;
    white-space: pre-wrap;
    [9.609]
    [9.5731]
    table.tablesorter thead tr th {
    padding-right: 1.5em;
    }
    #generic-tabs li {
    height : 30px;
    font-size : 90%;
    }
    #generic-tabs div {
    font-size : 90%;
    }
    h1, h2, h3 {
    font-weight: bold;
    color: #002a70;
  • edit in src/root/static/css/hydra.css at line 105
    [9.251][9.350:366](),[9.366][9.1554:1603](),[9.2410][9.1554:1603](),[9.1554][9.1554:1603](),[9.1603][9.367:418](),[9.418][9.1603:1605](),[9.1603][9.1603:1605](),[9.1605][9.2036:2037](),[9.251][9.2036:2037]()
    .runningBuild {
    background-color: #ff3030;
    color: white;
    }
    .disabledBuild {
    background-color: #b0b0b0;
    }
  • replacement in src/root/static/css/hydra.css at line 112
    [9.452][9.452:483]()
    .template {
    display: none;
    [9.452]
    [9.2022]
    .runningBuild {
    color: #ff9900;
  • replacement in src/root/static/css/hydra.css at line 116
    [9.3715][9.2309:2396]()
    div.help {
    border: solid black 1px;
    padding-left: 1em;
    padding-right: 1em;
    [9.3715]
    [9.2396]
    .disabledBuild {
    color: #b0b0b0;
  • replacement in src/root/static/css/hydra.css at line 120
    [9.2026][9.2399:2459]()
    div.help pre {
    padding-left: 1.5em;
    color: #400000;
    [9.2026]
    [9.2459]
    .error-msg {
    color: red;
    white-space: pre-wrap;
  • replacement in src/root/static/css/hydra.css at line 125
    [9.2462][9.2462:2463](),[9.1607][9.251:316](),[9.2026][9.251:316](),[9.2037][9.251:316](),[9.2463][9.251:316](),[9.3715][9.251:316](),[9.251][9.251:316]()
    /* Sortable tables */
    table.tablesorter {
    text-align: left;
    [9.2462]
    [9.317]
    .error {
    color: red;
    font-weight: bold;
  • replacement in src/root/static/css/hydra.css at line 130
    [9.1175][9.319:520](),[9.319][9.319:520]()
    table.tablesorter thead tr .header {
    background-image: url(/static/js/tablesorter/themes/blue/bg.gif);
    background-repeat: no-repeat;
    background-position: center right;
    cursor: pointer;
    [9.1175]
    [9.520]
    pre {
    margin-left: 1.5em;
    margin-right: 1.5em;
  • replacement in src/root/static/css/hydra.css at line 135
    [9.523][9.523:637]()
    table.tablesorter thead tr .headerSortUp {
    background-image: url(/static/js/tablesorter/themes/blue/asc.gif);
    [9.523]
    [9.637]
    pre.buildlog {
    border: 1px solid black;
    padding: 0.3em;
    white-space: pre-wrap;
  • replacement in src/root/static/css/hydra.css at line 141
    [9.640][9.640:757]()
    table.tablesorter thead tr .headerSortDown {
    background-image: url(/static/js/tablesorter/themes/blue/desc.gif);
    [9.640]
    [9.757]
    div.buildlog {
    border: 1px solid black;
    padding: 0.3em;
  • replacement in src/root/static/css/hydra.css at line 146
    [9.760][9.760:878]()
    table.tablesorter thead tr .headerSortDown, table.tablesorter thead tr .headerSortUp {
    background-color: #ffe000;
    [9.760]
    [9.878]
    .multiLineMsg {
    padding: 0em;
    margin: 0em;
    white-space: pre-wrap;
  • replacement in src/root/static/css/hydra.css at line 152
    [9.729][9.729:787]()
    table.tablesorter thead tr th {
    padding-right: 1.5em;
    [9.729]
    [9.1974]
    .template {
    display: none;
  • edit in src/root/static/css/hydra.css at line 156
    [9.1977]
    [9.1977]
    div.help {
    border: solid black 1px;
    padding-left: 1em;
    padding-right: 1em;
    }
  • replacement in src/root/static/css/hydra.css at line 162
    [9.1978][9.8820:8852]()
    /* Overriding tablesorter... */
    [9.1978]
    [9.8852]
    div.help pre {
    padding-left: 1.5em;
    color: #400000;
    }
  • edit in src/root/static/css/hydra.css at line 172
    [9.2625][9.2625:2640]()
    /* Editing */
  • edit in src/root/static/css/nix-common.css at line 1
    [9.3681][9.3682:3837](),[9.3837][4.0:21](),[4.21][9.3858:4027](),[9.3858][9.3858:4027](),[9.4051][9.4051:4462](),[9.4495][9.4495:4565](),[9.4565][3.0:115](),[3.115][9.4565:4567](),[9.4565][9.4565:4567](),[9.4567][3.116:228]()
    body {
    font-family: sans-serif;
    background: white;
    margin: 2em 1em 2em 1em;
    }
    h1, h2, h3 {
    font-weight: bold;
    color: #005aa0;
    }
    h1 {
    font-size: 180%;
    }
    h2 {
    font-size: 130%;
    margin-top: 1em;
    }
    h3 {
    font-size: 100%;
    }
    table {
    empty-cells: show;
    border-collapse: collapse;
    border-spacing: 0px;
    }
    tr.odd {
    background: #f4f4ff;
    }
    th {
    text-align: center;
    font-weight: bold;
    background: #ffffc0;
    }
    td, th {
    padding: 2px 5px;
    border: solid black 1px;
    }
    td {
    vertical-align: top;
    }
    td.centered {
    text-align: center;
    }
    a {
    text-decoration: none;
    }
    a:hover, a:visited:hover {
    text-decoration: underline;
    }
    a:link { color: #0048b3; }
    a:visited { color: #002a6a; }
    a.no-hover:hover { background: none; }
    img {
    border-style: none;
    }
    li {
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    }
    pre {
    margin-left: 1.5em;
    margin-right: 1.5em;
    }
    pre.code {
    border: 1px solid #6185a0;
    padding: 6px 6px;
    color: #600000;
    background: #f4f4f8;
    }
  • edit in src/root/static/css/nixos-site.css at line 10
    [9.3861][5.24:46]()
    min-height: 30em;
  • edit in src/root/static/css/nixos-site.css at line 16
    [9.4034][9.4034:4208]()
    border-radius: 1em;
    -moz-border-radius: 1em;
    -webkit-border-radius: 1em;
    -moz-box-shadow: #404040 0px 5px 50px;
    -webkit-box-shadow: #404040 0px 5px 50px;
  • edit in src/root/static/css/nixos-site.css at line 90
    [9.5356][9.31141:31163]()
    min-height: 20em;
  • replacement in src/root/static/css/nixos-site.css at line 93
    [9.31180][9.31180:31202]()
    min-height: 20em;
    [9.31180]
    [9.5378]
    min-height: 35em;
  • edit in src/root/static/css/nixos-site.css at line 100
    [9.5451][9.31203:31225]()
    min-height: 20em;
  • file addition: running.gif (----------)
    [9.2196]