OLD | NEW |
1 // Copyright 2016 The LUCI Authors. All rights reserved. | 1 // Copyright 2016 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 buildbot | 5 package buildbot |
6 | 6 |
7 import ( | 7 import ( |
8 "encoding/json" | 8 "encoding/json" |
9 "errors" | 9 "errors" |
10 "fmt" | 10 "fmt" |
11 "io/ioutil" | 11 "io/ioutil" |
12 "math" | 12 "math" |
13 "path/filepath" | 13 "path/filepath" |
14 "regexp" | 14 "regexp" |
15 "sort" | 15 "sort" |
16 "strconv" | 16 "strconv" |
17 "strings" | 17 "strings" |
18 "time" | 18 "time" |
19 | 19 |
20 "golang.org/x/net/context" | 20 "golang.org/x/net/context" |
21 | 21 |
22 "github.com/luci/gae/service/datastore" | 22 "github.com/luci/gae/service/datastore" |
23 "github.com/luci/luci-go/common/data/stringset" | 23 "github.com/luci/luci-go/common/data/stringset" |
24 "github.com/luci/luci-go/common/logging" | 24 "github.com/luci/luci-go/common/logging" |
25 "github.com/luci/luci-go/milo/api/resp" | 25 "github.com/luci/luci-go/milo/api/resp" |
26 » "github.com/luci/luci-go/milo/appengine/common/model" | 26 » "github.com/luci/luci-go/milo/common/model" |
27 ) | 27 ) |
28 | 28 |
29 var errBuildNotFound = errors.New("Build not found") | 29 var errBuildNotFound = errors.New("Build not found") |
30 | 30 |
31 // getBuild fetches a buildbot build from the datastore and checks ACLs. | 31 // getBuild fetches a buildbot build from the datastore and checks ACLs. |
32 // The return code matches the master responses. | 32 // The return code matches the master responses. |
33 func getBuild(c context.Context, master, builder string, buildNum int) (*buildbo
tBuild, error) { | 33 func getBuild(c context.Context, master, builder string, buildNum int) (*buildbo
tBuild, error) { |
34 result := &buildbotBuild{ | 34 result := &buildbotBuild{ |
35 Master: master, | 35 Master: master, |
36 Buildername: builder, | 36 Buildername: builder, |
(...skipping 615 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
652 var newAliases map[string][]*buildbotLinkAlias | 652 var newAliases map[string][]*buildbotLinkAlias |
653 if l := remainingAliases.Len(); l > 0 { | 653 if l := remainingAliases.Len(); l > 0 { |
654 newAliases = make(map[string][]*buildbotLinkAlias, l) | 654 newAliases = make(map[string][]*buildbotLinkAlias, l) |
655 remainingAliases.Iter(func(v string) bool { | 655 remainingAliases.Iter(func(v string) bool { |
656 newAliases[v] = s.Aliases[v] | 656 newAliases[v] = s.Aliases[v] |
657 return true | 657 return true |
658 }) | 658 }) |
659 } | 659 } |
660 s.Aliases = newAliases | 660 s.Aliases = newAliases |
661 } | 661 } |
OLD | NEW |