| OLD | NEW |
| 1 <!-- | 1 <!-- |
| 2 Copyright 2016 The LUCI Authors. All rights reserved. | 2 Copyright 2016 The LUCI Authors. All rights reserved. |
| 3 Use of this source code is governed under the Apache License, Version 2.0 | 3 Use of this source code is governed under the Apache License, Version 2.0 |
| 4 that can be found in the LICENSE file. | 4 that can be found in the LICENSE file. |
| 5 | 5 |
| 6 This in an HTML Import-able file that contains the definition | 6 This in an HTML Import-able file that contains the definition |
| 7 of the following elements: | 7 of the following elements: |
| 8 | 8 |
| 9 <task-page> | 9 <task-page> |
| 10 | 10 |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 46 <template> | 46 <template> |
| 47 <style include="iron-flex iron-flex-alignment swarming-app-style single-page
-style task-style"> | 47 <style include="iron-flex iron-flex-alignment swarming-app-style single-page
-style task-style"> |
| 48 .milo { | 48 .milo { |
| 49 width: calc(100% - 11px); | 49 width: calc(100% - 11px); |
| 50 /** We don't control the milo site and it's on a different domain than | 50 /** We don't control the milo site and it's on a different domain than |
| 51 us, so there's no good way to avoid scrolling other than tell the iframe | 51 us, so there's no good way to avoid scrolling other than tell the iframe |
| 52 it is really tall.*/ | 52 it is really tall.*/ |
| 53 height: 2000px; | 53 height: 2000px; |
| 54 } | 54 } |
| 55 | 55 |
| 56 .left { | 56 .right { |
| 57 min-width: 550px; | 57 margin-top: 8px; |
| 58 } | 58 } |
| 59 .right { | 59 |
| 60 min-width: 500px; | 60 .break-all { |
| 61 margin-top: 8px; | 61 word-break: break-all; |
| 62 } | 62 } |
| 63 | 63 |
| 64 .expand { | 64 .expand { |
| 65 min-width: 3em; | 65 min-width: 3em; |
| 66 vertical-align: middle; | 66 vertical-align: middle; |
| 67 padding: .5em; | 67 padding: .5em; |
| 68 } | 68 } |
| 69 | 69 |
| 70 .code { | 70 .code { |
| 71 font-family: monospace; | 71 font-family: monospace; |
| 72 } | 72 } |
| 73 | 73 |
| 74 .stdout { | 74 .stdout { |
| 75 white-space: pre-line; | 75 white-space: pre-line; |
| 76 padding: 2px; | 76 padding: 2px; |
| 77 } | 77 } |
| 78 | 78 |
| 79 .refresh_input { | 79 .refresh_input { |
| 80 padding: 0 5px; | 80 padding: 0 5px; |
| 81 } | 81 } |
| 82 | 82 |
| 83 .reproduce { | 83 .reproduce { |
| 84 margin-left: 5px; | 84 margin-left: 5px; |
| 85 } | 85 } |
| 86 | 86 |
| 87 .tabbed { | 87 .tabbed { |
| 88 border: 3px solid #1F78B4; | 88 border: 3px solid #1F78B4; |
| 89 margin-left: 5px; | 89 margin-left: 5px; |
| 90 min-height: 80vh; | 90 min-height: 80vh; |
| 91 min-width: 550px; |
| 92 } |
| 93 |
| 94 .task-info { |
| 95 min-width: 500px; |
| 96 } |
| 97 |
| 98 .cipd-header { |
| 99 -moz-user-select: none; |
| 100 -webkit-user-select: none; |
| 101 -ms-user-select: none; |
| 102 user-select: none; |
| 103 font-weight: bold; |
| 104 margin-left: 8px; |
| 91 } | 105 } |
| 92 </style> | 106 </style> |
| 93 | 107 |
| 94 <url-param name="id" | 108 <url-param name="id" |
| 95 value="{{task_id}}"> | 109 value="{{task_id}}"> |
| 96 </url-param> | 110 </url-param> |
| 97 <url-param name="try_detail" | 111 <url-param name="try_detail" |
| 98 value="{{_try_detail}}"> | 112 value="{{_try_detail}}"> |
| 99 </url-param> | 113 </url-param> |
| 100 <url-param name="request_detail" | 114 <url-param name="request_detail" |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 152 <template is="dom-if" if="[[_disambiguate(task_id,_result)]]"> | 166 <template is="dom-if" if="[[_disambiguate(task_id,_result)]]"> |
| 153 <h2>Displaying a summary for a task with multiple tries</h2> | 167 <h2>Displaying a summary for a task with multiple tries</h2> |
| 154 <task-disambiguation | 168 <task-disambiguation |
| 155 busy="{{busy2}}" | 169 busy="{{busy2}}" |
| 156 auth_headers="[[_auth_headers]]" | 170 auth_headers="[[_auth_headers]]" |
| 157 task_id="[[task_id]]" | 171 task_id="[[task_id]]" |
| 158 summary_result="[[_result]]"> | 172 summary_result="[[_result]]"> |
| 159 </task-disambiguation> | 173 </task-disambiguation> |
| 160 </template> | 174 </template> |
| 161 | 175 |
| 162 <table hidden$="[[_not(_task_exists)]]"> | 176 <table class="task-info" hidden$="[[_not(_task_exists)]]"> |
| 163 <tr> | 177 <tr> |
| 164 <td>Name</td> | 178 <td>Name</td> |
| 165 <td>[[_request.name]]</td> | 179 <td>[[_request.name]]</td> |
| 166 </tr> | 180 </tr> |
| 167 <tr> | 181 <tr> |
| 168 <td>State</td> | 182 <td>State</td> |
| 169 <td class$="[[_stateClass(_result)]]">[[state(_result)]]</td> | 183 <td class$="[[_stateClass(_result)]]">[[state(_result)]]</td> |
| 170 </tr> | 184 </tr> |
| 171 <tr> | 185 <tr> |
| 172 <td>Created</td> | 186 <td>Created</td> |
| (...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 298 <td> | 312 <td> |
| 299 <button on-click="_toggleDetails"> | 313 <button on-click="_toggleDetails"> |
| 300 <iron-icon icon="icons:remove-circle-outline"></iron-icon> | 314 <iron-icon icon="icons:remove-circle-outline"></iron-icon> |
| 301 </button> | 315 </button> |
| 302 </td> | 316 </td> |
| 303 </tr> | 317 </tr> |
| 304 </template> | 318 </template> |
| 305 <template is="dom-if" if="[[_request_detail]]"> | 319 <template is="dom-if" if="[[_request_detail]]"> |
| 306 <tr> | 320 <tr> |
| 307 <td>Extra Args</td> | 321 <td>Extra Args</td> |
| 308 <td class="code">[[_extraArgs(_request)]]</td> | 322 <td class="code break-all">[[_extraArgs(_request)]]</td> |
| 309 </tr> | 323 </tr> |
| 310 <tr> | 324 <tr> |
| 311 <td>Command</td> | 325 <td>Command</td> |
| 312 <td class="code">[[_command(_request)]]</td> | 326 <td class="code break-all">[[_command(_request)]]</td> |
| 313 </tr> | 327 </tr> |
| 314 <tr> | 328 <tr> |
| 315 <td>Idempotent</td> | 329 <td>Idempotent</td> |
| 316 <td>[[_request.properties.idempotent]]</td> | 330 <td>[[_request.properties.idempotent]]</td> |
| 317 </tr> | 331 </tr> |
| 318 <tr> | 332 <tr> |
| 319 <td rowspan$="[[_rowspan(_request.tags)]]">Tags</td> | 333 <td rowspan$="[[_rowspan(_request.tags)]]">Tags</td> |
| 320 </tr> | 334 </tr> |
| 321 <template is="dom-repeat" items="{{_request.tags}}" as="tag"> | 335 <template is="dom-repeat" items="{{_request.tags}}" as="tag"> |
| 322 <tr> | 336 <tr> |
| 323 <td>[[tag]]</td> | 337 <td class="break-all">[[tag]]</td> |
| 324 </tr> | 338 </tr> |
| 325 </template> | 339 </template> |
| 326 | 340 |
| 327 <tr> | 341 <tr> |
| 328 <td>Execution timeout</td> | 342 <td>Execution timeout</td> |
| 329 <td>[[_humanDuration(_request.properties.execution_timeout_sec
s)]]</td> | 343 <td>[[_humanDuration(_request.properties.execution_timeout_sec
s)]]</td> |
| 330 </tr> | 344 </tr> |
| 331 <tr> | 345 <tr> |
| 332 <td>I/O timeout</td> | 346 <td>I/O timeout</td> |
| 333 <td>[[_humanDuration(_request.properties.io_timeout_secs)]]</t
d> | 347 <td>[[_humanDuration(_request.properties.io_timeout_secs)]]</t
d> |
| 334 </tr> | 348 </tr> |
| 335 <tr> | 349 <tr> |
| 336 <td>Grace period</td> | 350 <td>Grace period</td> |
| 337 <td>[[_humanDuration(_request.properties.grace_period_secs)]]<
/td> | 351 <td>[[_humanDuration(_request.properties.grace_period_secs)]]<
/td> |
| 338 </tr> | 352 </tr> |
| 339 | 353 |
| 340 <tr> | 354 <tr> |
| 341 <td>CIPD server</td> | 355 <td>CIPD server</td> |
| 342 <td> | 356 <td> |
| 343 <a href$="[[_request.properties.cipd_input.server]]"> | 357 <a href$="[[_request.properties.cipd_input.server]]"> |
| 344 [[_request.properties.cipd_input.server]] | 358 [[_request.properties.cipd_input.server]] |
| 345 </a> | 359 </a> |
| 346 </td> | 360 </td> |
| 347 </tr> | 361 </tr> |
| 348 <tr> | 362 <tr> |
| 349 <td>CIPD version</td> | 363 <td>CIPD version</td> |
| 350 <td>[[_request.properties.cipd_input.client_package.version]]<
/td> | 364 <td class="break-all">[[_request.properties.cipd_input.client_
package.version]]</td> |
| 351 </tr> | 365 </tr> |
| 352 <template is="dom-if" if="[[_wasPickedUp(_result)]]"> | 366 <template is="dom-if" if="[[_wasPickedUp(_result)]]"> |
| 353 <tr> | 367 <tr> |
| 354 <td>CIPD package name</td> | 368 <td>CIPD package name</td> |
| 355 <td>[[_result.cipd_pins.client_package.package_name]]</td> | 369 <td>[[_result.cipd_pins.client_package.package_name]]</td> |
| 356 </tr> | 370 </tr> |
| 357 </template> | 371 </template> |
| 358 | 372 |
| 359 <tr hidden$="[[_not(_request.properties.cipd_input)]]"> | 373 <tr hidden$="[[_not(_request.properties.cipd_input)]]"> |
| 360 <td rowspan$="[[_cipdRowspan(_request,_result)]]">CIPD package
s</td> | 374 <td rowspan$="[[_cipdRowspan(_request,_result)]]">CIPD package
s</td> |
| 361 </tr> | 375 </tr> |
| 362 <template is="dom-repeat" items="[[_cipdPackages(_request,_resul
t)]]" as="cipd"> | 376 <template is="dom-repeat" items="[[_cipdPackages(_request,_resul
t)]]" as="cipd"> |
| 363 <tr> | 377 <tr> |
| 364 <td>[[cipd.path]]/</td> | 378 <td>[[cipd.path]]/</td> |
| 365 </tr> | 379 </tr> |
| 366 <tr> | 380 <tr> |
| 367 <td><b>Requested:</b>[[cipd.requested]]</td> | 381 <td class="break-all"> |
| 382 <span class="cipd-header">Requested: </span>[[cipd.request
ed]] |
| 383 </td> |
| 368 </tr> | 384 </tr> |
| 369 <tr hidden$="[[!_hasActualCIPDPackages(_result)]]"> | 385 <tr hidden$="[[!_hasActualCIPDPackages(_result)]]"> |
| 370 <td><b>Actual:</b>[[cipd.actual]]</td> | 386 <td class="break-all"> |
| 387 <span class="cipd-header">Actual: </span>[[cipd.actual]] |
| 388 </td> |
| 371 </tr> | 389 </tr> |
| 372 </template> | 390 </template> |
| 373 | 391 |
| 374 <tr hidden$="[[_empty(_request.properties.caches)]]"> | 392 <tr hidden$="[[_empty(_request.properties.caches)]]"> |
| 375 <td rowspan$="[[_rowspan(_request.properties.caches)]]">Named
caches</td> | 393 <td rowspan$="[[_rowspan(_request.properties.caches)]]">Named
caches</td> |
| 376 </tr> | 394 </tr> |
| 377 <template is="dom-repeat" items="[[_request.properties.caches]]"
as="cache"> | 395 <template is="dom-repeat" items="[[_request.properties.caches]]"
as="cache"> |
| 378 <tr> | 396 <tr> |
| 379 <td><span>[[cache.name]]</span>:<span>[[cache.path]]</span><
/td> | 397 <td><span>[[cache.name]]</span>:<span>[[cache.path]]</span><
/td> |
| 380 </tr> | 398 </tr> |
| (...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 501 </paper-input> | 519 </paper-input> |
| 502 </div> | 520 </div> |
| 503 | 521 |
| 504 <template is="dom-if" if="[[_supportsMilo(_request,_show_raw)]]"> | 522 <template is="dom-if" if="[[_supportsMilo(_request,_show_raw)]]"> |
| 505 <div class="milo tabbed" hidden$="[[_isSummaryLink(task_id)]]"> | 523 <div class="milo tabbed" hidden$="[[_isSummaryLink(task_id)]]"> |
| 506 Milo results are only generated for task summaires, that is, tas
ks whose ids end in 0. Tasks ending in 1 or 2 represent possible retries of tas
ks. See <a href="//goo.gl/LE4rwV">the docs</a> for more. | 524 Milo results are only generated for task summaires, that is, tas
ks whose ids end in 0. Tasks ending in 1 or 2 represent possible retries of tas
ks. See <a href="//goo.gl/LE4rwV">the docs</a> for more. |
| 507 </div> | 525 </div> |
| 508 <iframe id="miloFrame" class="milo tabbed" src$="[[_getDisplayServ
erLink(_server_details.display_server_url_template,task_id)]]"></iframe> | 526 <iframe id="miloFrame" class="milo tabbed" src$="[[_getDisplayServ
erLink(_server_details.display_server_url_template,task_id)]]"></iframe> |
| 509 </template> | 527 </template> |
| 510 <template is="dom-if" if="[[_show_raw]]"> | 528 <template is="dom-if" if="[[_show_raw]]"> |
| 511 <div class="code stdout tabbed">[[_rawOutput(_stdout,_result)]]</d
iv> | 529 <div class="code stdout tabbed break-all">[[_rawOutput(_stdout,_re
sult)]]</div> |
| 512 </template> | 530 </template> |
| 513 </div> | 531 </div> |
| 514 </div> | 532 </div> |
| 515 </div> | 533 </div> |
| 516 </swarming-app> | 534 </swarming-app> |
| 517 | 535 |
| 518 <paper-dialog id="prompt" modal on-iron-overlay-closed="_promptClosed"> | 536 <paper-dialog id="prompt" modal on-iron-overlay-closed="_promptClosed"> |
| 519 <h2>Are you sure?</h2> | 537 <h2>Are you sure?</h2> |
| 520 <div>Are you sure you want to [[_dialog_prompt]]?</div> | 538 <div>Are you sure you want to [[_dialog_prompt]]?</div> |
| 521 <div class="buttons"> | 539 <div class="buttons"> |
| (...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 833 return result && result.state !== this.PENDING && result.state !== this.
CANCELED && result.state != this.EXPIRED; | 851 return result && result.state !== this.PENDING && result.state !== this.
CANCELED && result.state != this.EXPIRED; |
| 834 }, | 852 }, |
| 835 | 853 |
| 836 _wasNotPickedUp: function(result) { | 854 _wasNotPickedUp: function(result) { |
| 837 return result && !this._wasPickedUp(result); | 855 return result && !this._wasPickedUp(result); |
| 838 }, | 856 }, |
| 839 }); | 857 }); |
| 840 })(); | 858 })(); |
| 841 </script> | 859 </script> |
| 842 </dom-module> | 860 </dom-module> |
| OLD | NEW |