Set only http(s) links Gerrit defines a pattern for SAFE URLs: SAFE_URL_PATTERN = /^(https?:\/\/|mailto:|[^:/?#]*(?:[/?#]|$))/i; which does not allow finger:// url Only set link named group if url starts with http/https Use template to print href property only if link is defined
diff --git a/zuul-results-summary/zuul-results-summary.js b/zuul-results-summary/zuul-results-summary.js index b4bd3f7..b244207 100644 --- a/zuul-results-summary/zuul-results-summary.js +++ b/zuul-results-summary/zuul-results-summary.js
@@ -85,7 +85,8 @@ </tr> <template is="dom-repeat" items="[[item.results]]" as="job"> <tr> - <td><a href="[[job.link]]">[[job.job]]</a></td> + <template is="dom-if" if="{{job.link}}"><td><a href="{{job.link}}">[[job.job]]</a></td></template> + <template is="dom-if" if="{{!job.link}}"><td><a>[[job.job]]</a></td></template> <td><span class$="status-[[job.result]]">[[job.result]]</span></td> <td>[[job.time]]</td> </tr> @@ -195,7 +196,7 @@ // - openstack-tox-py35 http://... : SUCCESS in 2m 45 const results = []; const lines = message.message.split('\n'); - const resultRe = /^- (?<job>[^ ]+) (?<link>[^ ]+) : (?<result>[^ ]+) in (?<time>.*)/; + const resultRe = /^- (?<job>[^ ]+) (?:(?<link>https?:\/\/[^ ]+)|[^ ]+) : (?<result>[^ ]+) in (?<time>.*)/; lines.forEach(line => { const result = resultRe.exec(line); if (result) {