Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(21)

Side by Side Diff: appengine/findit/templates/build_failure.html

Issue 2015703003: [Findit] UI: Only display try job result to non-admin users if it's available. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: . Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | appengine/findit/templates/waterfall/compile_failure.html » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <head> 2 <head>
3 <title>Build Failure</title> 3 <title>Build Failure</title>
4 <meta charset="utf-8"> 4 <meta charset="utf-8">
5 <link rel="stylesheet" href="/common.css"> 5 <link rel="stylesheet" href="/common.css">
6 <style> 6 <style>
7 .running { 7 .running {
8 color: #666666; 8 color: #666666;
9 background-color: #fffc6c; 9 background-color: #fffc6c;
10 border-color: #c5c56d; 10 border-color: #c5c56d;
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
246 246
247 tableString += generateHeuristicCulpritCls(result.heuristic_analysis.s uspected_cls, result.supported); 247 tableString += generateHeuristicCulpritCls(result.heuristic_analysis.s uspected_cls, result.supported);
248 tableString += '</tr>'; 248 tableString += '</tr>';
249 }); 249 });
250 250
251 $('#reliable_failures_table tbody').append(tableString); 251 $('#reliable_failures_table tbody').append(tableString);
252 $('#reliable_failures').removeClass('not-display'); 252 $('#reliable_failures').removeClass('not-display');
253 } 253 }
254 } 254 }
255 255
256 function displayReliableFailuresToSheriffs(step_name, results) {
257 if (!jQuery.isEmptyObject(results)) {
258 var tableString = '';
259 $.each(results, function(index, result) {
260 tableString += '<tr>';
261
262 var tryJob = result.try_job;
263 var tryJobCulprit = tryJob.culprit;
264 var rowspan = 1;
265
266 if (jQuery.isEmptyObject(tryJobCulprit)) {
267 rowspan = result.heuristic_analysis.suspected_cls.length > 0 ? resul t.heuristic_analysis.suspected_cls.length : 1;
268 }
269 tableString += generateCommonCellsForAllCategories(step_name, 'determi ned', index, result.tests, result.first_failure, result.last_pass, 1);
270
271 if (! jQuery.isEmptyObject(tryJobCulprit)) {
272 tableString += '<td rowspan="' + rowspan + '">Try Job</td>';
273 var build_number = result.try_job.try_job_key.split('/')[2]; // try _job_key would look like: 'master_name/builder_name/build_number'.
274 tableString += '<td rowspan="' + rowspan + '"><a href="' + findit.bu ilderUrl + '/builds/' + build_number + '">' + build_number + '</a></td>';
275 var review_url = tryJobCulprit.url || tryJobCulprit.review_url || (f indit.defaultGitBaseUrl + tryJobCulprit.revision);
276 tableString += '<td rowspan="' + rowspan + '"><a href="' + review_ur l + '">' + tryJobCulprit.commit_position || tryJobCulprit.revision + '</a></td>' ;
277 // Right now this cell is only for scores of heuristic results, plac eholder for confidence in the future.
278 tableString += '<td rowspan="' + rowspan + '">N/A</td>';
279 tableString += '<td rowspan="' + rowspan + '">';
280 tableString += '<li>Reliable failure: <a href="' + tryJob.task_url+ '">' + tryJob.task_id + '</a></li>';
281 if (tryJob.try_job_url) {
282 tableString += '<li>For try job details: <a href="' + tryJob.try_j ob_url+ '">' + tryJob.try_job_build_number + '</a></li>';
283 }
284 tableString += '</td>';
285 tableString += '<td rowspan="' + rowspan + '">Try job completed succ essfully.</td>';
286
287 } else {
288 if (result.heuristic_analysis.suspected_cls.length > 0) {
289 tableString += '<td rowspan="' + rowspan + '">Heuristic Analysis</ td>';
290 tableString += generateHeuristicCulpritCls(result.heuristic_analys is.suspected_cls, result.supported);
291 } else {
292 var no_result_reason = 'Not Found';
293 if (! result.supported) {
294 no_result_reason = 'Not Supported';
295 }
296 tableString += '<td colspan="5" rowspan="' + rowspan + '">' + no_r esult_reason + '</td>';
297 }
298 tableString += '<td rowspan="' + rowspan + '">' + findit.tryjobStatu sMessageMap[tryJob.status] + '</td>';
299 }
300
301 tableString += '</tr>';
302 });
303
304 $('#reliable_failures_sheriffs_table tbody').append(tableString);
305 $('#reliable_failures_sheriffs').removeClass('not-display');
306 }
307 }
308
256 function displayFlakyFailures(step_name, results) { 309 function displayFlakyFailures(step_name, results) {
257 if (!jQuery.isEmptyObject(results)) { 310 if (!jQuery.isEmptyObject(results)) {
258 var tableString = ''; 311 var tableString = '';
259 $.each(results, function(index, result) { 312 $.each(results, function(index, result) {
260 tableString += '<tr>'; 313 tableString += '<tr>';
261 var rowspan = result.heuristic_analysis.suspected_cls.length > 0 ? res ult.heuristic_analysis.suspected_cls.length : 1; 314 var rowspan = result.heuristic_analysis.suspected_cls.length > 0 ? res ult.heuristic_analysis.suspected_cls.length : 1;
262 tableString += generateCommonCellsForAllCategories(step_name, 'flaky', index, result.tests, result.first_failure, result.last_pass, rowspan); 315 tableString += generateCommonCellsForAllCategories(step_name, 'flaky', index, result.tests, result.first_failure, result.last_pass, rowspan);
263 316
264 tableString += '<td rowspan="' + rowspan + '"><a href="' + result.try_ job.task_url + '">' + result.try_job.task_id + '</a></td>'; 317 tableString += '<td rowspan="' + rowspan + '"><a href="' + result.try_ job.task_url + '">' + result.try_job.task_id + '</a></td>';
265 318
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 // TODO: use another style when no culprit CL is found. 364 // TODO: use another style when no culprit CL is found.
312 $('#status_message').text('completed'); 365 $('#status_message').text('completed');
313 $('#status_message').attr('class', 'completed'); 366 $('#status_message').attr('class', 'completed');
314 367
315 $('.triage').click(triageAnalysisResult); 368 $('.triage').click(triageAnalysisResult);
316 369
317 if (!jQuery.isEmptyObject(findit.analysisResult)) { 370 if (!jQuery.isEmptyObject(findit.analysisResult)) {
318 $.each(findit.analysisResult, function(step_name, step_results) { 371 $.each(findit.analysisResult, function(step_name, step_results) {
319 $.each(step_results.results, function(category, results) { 372 $.each(step_results.results, function(category, results) {
320 if (category == 'reliable_failures') { 373 if (category == 'reliable_failures') {
374 {% if show_debug_info %}
321 displayReliableFailures(step_name, results); 375 displayReliableFailures(step_name, results);
376 {% else %}
377 displayReliableFailuresToSheriffs(step_name, results);
378 {% endif %}
322 } else if (category == 'unclassified_failures') { 379 } else if (category == 'unclassified_failures') {
323 displayUnclassifiedFailures(step_name, results); 380 displayUnclassifiedFailures(step_name, results);
324 } else if (category == 'flaky_failures') { 381 } else if (category == 'flaky_failures') {
325 displayFlakyFailures(step_name, results); 382 displayFlakyFailures(step_name, results);
326 } else { 383 } else {
327 alert('Unrecongnizable category of test results, please file a bug for it.'); 384 alert('Unrecongnizable category of test results, please file a bug for it.');
328 } 385 }
329 }); 386 });
330 }); 387 });
331 } else { 388 } else {
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
404 <thead> 461 <thead>
405 <tr> 462 <tr>
406 <th rowspan="3" title="Failed step name" width="150px">Step</t h> 463 <th rowspan="3" title="Failed step name" width="150px">Step</t h>
407 <th rowspan="3" title="Failed test name" width="300px">Test(s) </th> 464 <th rowspan="3" title="Failed test name" width="300px">Test(s) </th>
408 <th rowspan="3" title="The build cycle in which the step start ed to fail">First Failure</th> 465 <th rowspan="3" title="The build cycle in which the step start ed to fail">First Failure</th>
409 <th rowspan="3" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> 466 <th rowspan="3" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th>
410 <th colspan="8">Suspected CLs</th> 467 <th colspan="8">Suspected CLs</th>
411 </tr> 468 </tr>
412 <tr> 469 <tr>
413 <th colspan="3">Try Job Result</th> 470 <th colspan="3">Try Job Result</th>
414 <th colspan="4">Heuristic Analysis Result</th> 471 <th colspan="5">Heuristic Analysis Result</th>
415 </tr> 472 </tr>
416 <tr> 473 <tr>
417 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> 474 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th>
418 <th title="Git commit position/hash">Commit</th> 475 <th title="Git commit position/hash">Commit</th>
419 <th title="Information about related swarming rerun and try jo b">Swarming rerun and<br>Try Job Info</th> 476 <th title="Information about related swarming rerun and try jo b">Swarming rerun and<br>Try Job Info</th>
420 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> 477 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th>
421 <th title="Git commit position/hash">Commit</th> 478 <th title="Git commit position/hash">Commit</th>
422 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> 479 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th>
423 <th title="Why this CL is related to the failure">Hints</th> 480 <th title="Why this CL is related to the failure">Hints</th>
424 </tr> 481 </tr>
425 </thead> 482 </thead>
426 <tbody> 483 <tbody>
427 </tbody> 484 </tbody>
428 </table> 485 </table>
429 <br> 486 <br>
430 </div> 487 </div>
431 488
489 <div id="reliable_failures_sheriffs" class='not-display'>
490 <b>Reliable failures</b>
491 <table id="reliable_failures_sheriffs_table">
492 <thead>
493 <tr>
494 <th rowspan="2" title="Failed step name" width="150px">Step</t h>
495 <th rowspan="2" title="Failed test name" width="300px">Test(s) </th>
496 <th rowspan="2" title="The build cycle in which the step start ed to fail">First Failure</th>
497 <th rowspan="2" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th>
498 <th colspan="6">Suspected CLs</th>
499 </tr>
500 <tr>
501 <th title="The source of result, it could be a Try Job rerun o r Heuristic Analysis on failure logs and CLs in regression range.">Analysis appr oach</th>
502 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th>
503 <th title="Git commit position/hash">Commit</th>
504 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th>
505 <th title="Why this CL is related to the failure">Reason</th>
506 <th title="Additional information such as the status of try jo b.">Note</th>
507 </tr>
508 </thead>
509 <tbody>
510 </tbody>
511 </table>
512 <br>
513 </div>
514
432 <div id="flaky_failures" class='not-display'> 515 <div id="flaky_failures" class='not-display'>
433 <b>Flaky failures</b> 516 <b>Flaky failures</b>
434 <table id="flaky_failures_table"> 517 <table id="flaky_failures_table">
435 <thead> 518 <thead>
436 <tr> 519 <tr>
437 <th rowspan="3" title="Failed step name" width="150px">Step</t h> 520 <th rowspan="3" title="Failed step name" width="150px">Step</t h>
438 <th rowspan="3" title="Failed test name" width="300px">Test(s) </th> 521 <th rowspan="3" title="Failed test name" width="300px">Test(s) </th>
439 <th rowspan="3" title="The build cycle in which the step start ed to fail">First Failure</th> 522 <th rowspan="3" title="The build cycle in which the step start ed to fail">First Failure</th>
440 <th rowspan="3" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th> 523 <th rowspan="3" title="The last build cycle in which the step passed">Last Pass<br>Before Failure</th>
441 <th rowspan="3" title="link to swarming rerun">Swarming Rerun< /th> 524 <th rowspan="3" title="link to swarming rerun">Swarming Rerun< /th>
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
475 <tr> 558 <tr>
476 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th> 559 <th title="The build cycle in which the CL was built or tested for the first time">Build Number</th>
477 <th title="Git commit position/hash">Commit</th> 560 <th title="Git commit position/hash">Commit</th>
478 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th> 561 <th title="The higher score, the more suspected">Score (<a cla ss="score-info" href="javascript:">?</a>)</th>
479 <th title="Why this CL is related to the failure">Hints</th> 562 <th title="Why this CL is related to the failure">Hints</th>
480 </tr> 563 </tr>
481 </thead> 564 </thead>
482 <tbody> 565 <tbody>
483 </tbody> 566 </tbody>
484 </table> 567 </table>
568 <br>
485 </div> 569 </div>
486 </div> 570 </div>
487 <br> 571
488 <div class="thumbs-up-down"> 572 <div class="thumbs-up-down">
489 <b>Feedback on Findit result:</b><br> 573 <b>Feedback on Findit result:</b><br>
490 <div class="triage thumb-up">Correct <img src="https://www.gstatic.com /images/icons/material/system/1x/thumb_up_black_24dp.png"/></div> 574 <div class="triage thumb-up">Correct <img src="https://www.gstatic.com /images/icons/material/system/1x/thumb_up_black_24dp.png"/></div>
491 <div class="triage thumb-down"><img src="https://www.gstatic.com/image s/icons/material/system/1x/thumb_down_black_24dp.png"/> Incorrect</div> 575 <div class="triage thumb-down"><img src="https://www.gstatic.com/image s/icons/material/system/1x/thumb_down_black_24dp.png"/> Incorrect</div>
492 </div> 576 </div>
493 </div> 577 </div>
494 {% endif %} 578 {% endif %}
495 {% endif %} 579 {% endif %}
496 580
497 {% if show_triage_help_button %} 581 {% if show_triage_help_button %}
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
534 appearing in the failure log. (eg: file.h was changed and 618 appearing in the failure log. (eg: file.h was changed and
535 file_unittest.cc or file_impl.cc appeared in the log.)</li> 619 file_unittest.cc or file_impl.cc appeared in the log.)</li>
536 <li>1: The CL rolled a dependency within src/DEPS and a file of that 620 <li>1: The CL rolled a dependency within src/DEPS and a file of that
537 dependency appears in the failure log. (eg: third_party/dep 621 dependency appears in the failure log. (eg: third_party/dep
538 was changed in src/DEPS and third_party/dep/f.cpp appeared 622 was changed in src/DEPS and third_party/dep/f.cpp appeared
539 in the log.)</li> 623 in the log.)</li>
540 </ul> 624 </ul>
541 (More rules will be added when implemented.) 625 (More rules will be added when implemented.)
542 </div> 626 </div>
543 </body> 627 </body>
OLDNEW
« no previous file with comments | « no previous file | appengine/findit/templates/waterfall/compile_failure.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698