dashboard/app: add machine-readable list of recent failures
Change-Id: I90be865aaab01701d10af57bdf1e0bee5533d3e5 Reviewed-on: https://go-review.googlesource.com/1562 Reviewed-by: Andrew Gerrand <adg@golang.org>
This commit is contained in:
parent
40817d5f2c
commit
8d0ad68ce2
|
@ -95,6 +95,11 @@ func uiHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
}
|
}
|
||||||
data := &uiTemplateData{d, pkg, commits, builders, tipState, p, branch}
|
data := &uiTemplateData{d, pkg, commits, builders, tipState, p, branch}
|
||||||
|
|
||||||
|
if r.FormValue("mode") == "failures" {
|
||||||
|
failuresHandler(w, r, data)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
var buf bytes.Buffer
|
var buf bytes.Buffer
|
||||||
if err := uiTemplate.Execute(&buf, data); err != nil {
|
if err := uiTemplate.Execute(&buf, data); err != nil {
|
||||||
logErr(w, r, err)
|
logErr(w, r, err)
|
||||||
|
@ -106,6 +111,24 @@ func uiHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
buf.WriteTo(w)
|
buf.WriteTo(w)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// failuresHandler is https://build.golang.org/?mode=failures , where it outputs
|
||||||
|
// one line per failure on the front page, in the form:
|
||||||
|
// hash builder failure-url
|
||||||
|
func failuresHandler(w http.ResponseWriter, r *http.Request, data *uiTemplateData) {
|
||||||
|
w.Header().Set("Content-Type", "text/plain")
|
||||||
|
d := dashboardForRequest(r)
|
||||||
|
for _, c := range data.Commits {
|
||||||
|
for _, b := range data.Builders {
|
||||||
|
res := c.Result(b, "")
|
||||||
|
if res == nil || res.OK || res.LogHash == "" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
url := fmt.Sprintf("https://%v%v/log/%v", r.Host, d.Prefix, res.LogHash)
|
||||||
|
fmt.Fprintln(w, c.Hash, b, url)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
type Pagination struct {
|
type Pagination struct {
|
||||||
Next, Prev int
|
Next, Prev int
|
||||||
HasPrev bool
|
HasPrev bool
|
||||||
|
|
Loading…
Reference in New Issue