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

Side by Side Diff: milo/appengine/job_source/buildbucket/buckets.go

Issue 2949783002: [milo] appengine/* -> * (Closed)
Patch Set: rebase Created 3 years, 6 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
(Empty)
1 // Copyright 2017 The LUCI Authors. All rights reserved.
2 // Use of this source code is governed under the Apache License, Version 2.0
3 // that can be found in the LICENSE file.
4
5 package buildbucket
6
7 import (
8 "errors"
9 "fmt"
10
11 "golang.org/x/net/context"
12
13 "github.com/luci/luci-go/milo/api/resp"
14 "github.com/luci/luci-go/milo/appengine/common"
15 )
16
17 func GetAllBuilders(c context.Context) (*resp.CIService, error) {
18 settings := common.GetSettings(c)
19 bucketSettings := settings.Buildbucket
20 if bucketSettings == nil {
21 return nil, errors.New("buildbucket settings missing in config")
22 }
23 result := &resp.CIService{
24 Name: "Swarmbucket",
25 Host: resp.NewLink(bucketSettings.Name, "https://"+bucketSetting s.Host),
26 }
27 client, err := newSwarmbucketClient(c, bucketSettings.Host)
28 if err != nil {
29 return nil, err
30 }
31 // TODO(hinoka): Retries for transient errors
32 r, err := client.GetBuilders().Do()
33 if err != nil {
34 return nil, err
35 }
36
37 result.BuilderGroups = make([]resp.BuilderGroup, len(r.Buckets))
38 for i, bucket := range r.Buckets {
39 group := resp.BuilderGroup{Name: bucket.Name}
40 group.Builders = make([]resp.Link, len(bucket.Builders))
41 for j, builder := range bucket.Builders {
42 group.Builders[j] = *resp.NewLink(
43 builder.Name, fmt.Sprintf("/buildbucket/%s/%s", bucket.Name, builder.Name))
44 }
45 result.BuilderGroups[i] = group
46 }
47
48 return result, nil
49 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698