github.com/shashidharatd/test-infra@v0.0.0-20171006011030-71304e1ca560/gubernator/templates/build.html (about) 1 % extends 'base.html' 2 {% block title %}{{job}} #{{build}} Results{% endblock %} 3 % block head 4 {{super()}} 5 % if finished and finished['result'] == 'SUCCESS' and not res['failed'] 6 <link rel="icon" type="image/png" href="{{'favicon-green.png'|static}}" /> 7 % endif 8 % endblock 9 % block header 10 <h1>{% if pr and pr != "batch" %}<a href="/pr/{{pr_path}}{{pr}}">{% if repo != "kubernetes/kubernetes"%}{{repo}} {% endif %}PR #{{pr}}</a> {% endif %} 11 % if testgrid_query 12 <a href="{{testgrid_query|tg_url}}">{{job}}</a> 13 % else 14 {{job}} 15 % endif 16 #{{build}}</h1> 17 <p><a href="/builds{{job_dir}}">Recent runs</a><br> 18 % endblock 19 % block content 20 <div id="summary"> 21 <table class="build-meta"> 22 % if pr and pr_digest 23 % set pl = pr_digest.payload 24 <tr><td>PR<td><a href="/pr/{{pl['author']}}">{{pl['author']}}</a>: {{pl['title']}} 25 % endif 26 % set result = finished['result'] if finished else 'Not Finished' 27 <tr><td>Result<td><span class="build-{{result | slugify}}">{{result}}</span> 28 % if started 29 % if finished 30 <tr><td>Tests<td> 31 % if res['failed'] 32 <span class="text-failure">{{res['failed']|length}} failed</span> 33 % else 34 {{res['failed']|length}} failed 35 % endif 36 / {{res['passed']|length}} succeeded 37 % endif 38 <tr><td>Started<td>{{started['timestamp']|timestamp}} 39 {% if finished %}<tr><td>Elapsed<td>{{(finished['timestamp']-started['timestamp'])|duration}}{% endif %} 40 <tr><td>Version<td><a href="https://github.com/{{repo}}/commit/{{commit}}">{{started['version'] or finished['version']}}</a> 41 % if 'jenkins-node' in started 42 <tr><td>Builder<td>{{started['jenkins-node']}} 43 % endif 44 % if refs 45 <tr><td>Refs<td> 46 % for name, sha in refs 47 {%- if name.isdigit() -%} 48 <a href="https://github.com/{{repo}}/pull/{{name}}">{{name}}</a> 49 {%- else -%} 50 {{name}} 51 {%- endif -%} 52 {%- if sha %}:{{sha|github_commit_link(repo)}}{% endif %}<br> 53 {%- endfor %} 54 % endif 55 % if 'metadata' in started 56 % for k, v in started['metadata']|dictsort 57 <tr><td>{{k}}<td>{{v}} 58 % endfor 59 % endif 60 % if finished and 'metadata' in finished 61 % for k, v in finished['metadata']|dictsort 62 <tr><td>{{k}}<td>{{v}} 63 % endfor 64 % endif 65 % endif 66 </table> 67 <ul class="nav"> 68 <li class="nav"><a href="{{build_dir | gcs_browse_url}}">artifacts</a></li> 69 <li class="nav"><a href="?log#log">build log</a></li> 70 </ul> 71 </div> 72 <div id="failures"> 73 % if issues 74 <h4>References</h4> 75 % for issue in issues 76 <a href="https://github.com/{{issue.repo}}/issues/{{issue.number}}"> 77 {% if issue.is_pr %}PR{% else %}Issue{% endif %} #{{issue.number}} {{issue.payload['title']}}</a> 78 <br> 79 % endfor 80 <hr> 81 % endif 82 % if res['failed'] 83 <h2>Test Failures</h2> 84 % for name, time, text, filename, output in res['failed'] 85 <hr> 86 <h3><a class="anchor" id="{{name|slugify}}" href="#{{name|slugify}}">{{name}}<span class="time"> {{time|duration}}</span></h3></a> 87 % if 'junit_runner' not in filename 88 <pre class="cmd" onclick="select(this)">{{name | testcmd}}</pre> 89 % endif 90 % if text 91 <pre class="error">{{text|linkify_stacktrace(commit, repo)}} 92 % if output 93 <div class="hidden"><hr>{{output|linkify_stacktrace(commit, repo)}}</div> 94 <span class="expand inset-expand">Click to see stdout/stderr</span><span class="inset-filename">from <a href="https://storage.googleapis.com{{filename}}">{{filename|basename}}</a></span></pre> 95 % else 96 <span class="inset-filename">from <a href="https://storage.googleapis.com{{filename}}">{{filename|basename}}</a></span></pre> 97 % endif 98 % set pod_name = text|parse_pod_name 99 % if pod_name 100 <p>Find <tt>{{pod_name}}</tt> mentions in <a id="{{pod_name|slugify}}" href="/build{{build_dir}}/nodelog?pod={{pod_name}}&junit={{filename|basename}}&wrap=on">log files</a> 101 % else 102 <p>Filter through <a href="/build{{build_dir}}/nodelog?junit={{filename|basename}}&wrap=on">log files</a> 103 % endif 104 % if testgrid_query 105 | View <a href="{{testgrid_query|tg_url(name)}}">test history</a> on testgrid 106 % endif 107 % else 108 <span class="inset-filename">from <a href="https://storage.googleapis.com{{filename}}">{{filename|basename}}</a></span> 109 % endif 110 % endfor 111 % else 112 <h2>{{"No Test Failures!" if finished else "Build Still Running!"}}</h2> 113 % endif 114 </div> 115 % for kind in ['passed', 'skipped'] 116 % if res[kind] 117 <hr> 118 <div id="{{kind}}" class="testlist"> 119 <span class="expand">Show {{res[kind]|length}} {{kind|title}} Tests</span> 120 <h2 class="hidden">{{kind|title}}</h2> 121 % for name in res[kind] 122 <p class="hidden">{{name}} 123 % endfor 124 </div> 125 % endif 126 % endfor 127 % if build_log 128 <div id="log"> 129 <a name="log"></a> 130 <hr> 131 <h2 id="log">Error lines from build-log.txt</h2> 132 <ul class="log"> 133 <li class="log"><button onclick="javascript:expand_all(this.parentElement)">Expand Skipped Lines</button></li> 134 <li class="log"><a href="{{build_log_src or "https://storage.googleapis.com%s/build-log.txt" % build_dir}}">Raw build-log.txt</a></li> 135 </ul> 136 <pre data-src="{{build_log_src or "%s/build-log.txt" % build_dir}}">{{build_log | safe}}</pre> 137 </div> 138 % endif 139 % endblock