blob: 4cd7b534409cbc19413618ec39affca1b7385781 [file] [log] [blame]
Leonardo Sandoval9f159802021-01-20 16:47:25 -06001import hudson.model.*
2
3void log(msg) {
4 manager.listener.logger.println(msg)
5}
6
7def findRealUrl(url) {
8 def connection = url.openConnection()
9 connection.followRedirects = false
10 connection.requestMethod = "GET"
11 connection.connect()
12 if (connection.responseCode == 302) {
13 if (connection.headerFields.'Location') {
14 return findRealUrl(connection.headerFields.Location.first().toURL())
15 } else {
16 log('Failed to follow redirect')
17 }
18 }
19 return url
20}
21
22def artifact = "report.html"
23def jobUrl = manager.hudson.getRootUrl() + "${manager.build.url}artifact/${artifact}"
24def url = new URL(jobUrl)
25def realUrl = findRealUrl(url)
26def connection = realUrl.openConnection()
27connection.requestMethod = "GET"
28if (connection.responseCode == 200) {
29 def summaryContent = connection.content.text
30 def summary = manager.createSummary("clipboard.gif")
31 def buildResult = manager.build.getResult()
32 summary.appendText(summaryContent, false)
33} else {
34 log("Connection response code: ${connection.responseCode}")
35}