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

Side by Side Diff: milo/buildsource/swarming/html.go

Issue 2975023002: [milo] remove linkBase and calculate links directly. (Closed)
Patch Set: common url base Created 3 years, 5 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
OLDNEW
1 // Copyright 2015 The LUCI Authors. All rights reserved. 1 // Copyright 2015 The LUCI Authors. All rights reserved.
2 // Use of this source code is governed under the Apache License, Version 2.0 2 // Use of this source code is governed under the Apache License, Version 2.0
3 // that can be found in the LICENSE file. 3 // that can be found in the LICENSE file.
4 4
5 package swarming 5 package swarming
6 6
7 import ( 7 import (
8 "errors" 8 "errors"
9 "fmt" 9 "fmt"
10 "net/http" 10 "net/http"
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 common.ErrorPage(c, http.StatusBadRequest, 107 common.ErrorPage(c, http.StatusBadRequest,
108 fmt.Sprintf("no swarming host: %s", err.Error())) 108 fmt.Sprintf("no swarming host: %s", err.Error()))
109 return 109 return
110 } 110 }
111 sf, err := NewProdService(c.Context, hostname) 111 sf, err := NewProdService(c.Context, hostname)
112 if err != nil { 112 if err != nil {
113 common.ErrorPage(c, errCode(err), err.Error()) 113 common.ErrorPage(c, errCode(err), err.Error())
114 return 114 return
115 } 115 }
116 116
117 » result, err := b.bl.SwarmingBuildImpl(c.Context, sf, c.Request.URL.Strin g(), id) 117 » result, err := b.bl.SwarmingBuildImpl(c.Context, sf, id)
118 if err != nil { 118 if err != nil {
119 common.ErrorPage(c, errCode(err), err.Error()) 119 common.ErrorPage(c, errCode(err), err.Error())
120 return 120 return
121 } 121 }
122 122
123 templates.MustRender(c.Context, c.Writer, "pages/build.html", templates. Args{ 123 templates.MustRender(c.Context, c.Writer, "pages/build.html", templates. Args{
124 "Build": result, 124 "Build": result,
125 }) 125 })
126 } 126 }
127 127
128 // errCode resolves recognized errors into proper http response codes. 128 // errCode resolves recognized errors into proper http response codes.
129 func errCode(err error) int { 129 func errCode(err error) int {
130 if err == errUnrecognizedHost { 130 if err == errUnrecognizedHost {
131 return http.StatusBadRequest 131 return http.StatusBadRequest
132 } 132 }
133 if isAPINotFound(err) || os.IsNotExist(err) { 133 if isAPINotFound(err) || os.IsNotExist(err) {
134 return http.StatusNotFound 134 return http.StatusNotFound
135 } 135 }
136 return http.StatusInternalServerError 136 return http.StatusInternalServerError
137 } 137 }
138 138
139 // isAPINotFound returns true if err is a HTTP 404 API response. 139 // isAPINotFound returns true if err is a HTTP 404 API response.
140 func isAPINotFound(err error) bool { 140 func isAPINotFound(err error) bool {
141 if apiErr, ok := err.(*googleapi.Error); ok && apiErr.Code == http.Statu sNotFound { 141 if apiErr, ok := err.(*googleapi.Error); ok && apiErr.Code == http.Statu sNotFound {
142 return true 142 return true
143 } 143 }
144 return false 144 return false
145 } 145 }
OLDNEW
« no previous file with comments | « milo/buildsource/swarming/expectations/build-unicode.json ('k') | milo/buildsource/swarming/html_data.go » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698