buildbucket

package
v0.0.0-...-a0a3655 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 28, 2019 License: Apache-2.0 Imports: 50 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNotFound    = errors.Reason("Build not found").Tag(grpcutil.NotFoundTag).Err()
	ErrNotLoggedIn = errors.Reason("not logged in").Tag(grpcutil.UnauthenticatedTag).Err()
)

Functions

func BuildAddress

func BuildAddress(build *buildbucketpb.Build) string

BuildAddress constructs the build address of a buildbucketpb.Build. This is used as the key for the BuildSummary entity.

func CIService

func CIService(c context.Context) (*ui.CIService, error)

CIService returns a *ui.CIService containing all known buckets and builders.

func GetBuildPage

func GetBuildPage(ctx *router.Context, br buildbucketpb.GetBuildRequest, forceBlamelist bool) (*ui.BuildPage, error)

GetBuildPage fetches the full set of information for a Milo build page from Buildbucket. Including the blamelist and other auxiliary information.

func GetBuildSummary

func GetBuildSummary(c context.Context, id int64) (*model.BuildSummary, error)

GetBuildSummary fetches a build summary where the Context URI matches the given address.

func GetBuilder

func GetBuilder(c context.Context, bid BuilderID, limit int, cursor string) (*ui.BuilderLegacy, error)

GetBuilder is used by buildsource.BuilderID.Get to obtain the resp.Builder.

func GetBuilderID

func GetBuilderID(c context.Context, id int64) (builder *buildbucketpb.BuilderID, number int32, err error)

GetBuilderID returns the builder, and maybe the build number, for a build id.

func GetBuilders

func GetBuilders(c context.Context) (*swarmbucket.LegacySwarmbucketApiGetBuildersResponseMessage, error)

GetBuilders returns all Swarmbucket builders, cached for current identity.

func GetSwarmingTaskID

func GetSwarmingTaskID(c context.Context, buildAddress string) (host, taskID string, err error)

GetSwarmingTaskID returns the swarming task ID of a buildbucket build. TODO(hinoka): BuildInfo and Skia requires this. Remove this when buildbucket v2 is out and Skia is on Kitchen. TODO(nodir): delete this. It is used only in deprecated BuildInfo API.

func MakeBuildBugLink(bt *config.BugTemplate, data interface{}) (string, error)

MakeBuildBugLink attempts to create the feedback link for the build page. If the project is not configured for a custom build bug link or an interpolation placeholder cannot be satisfied an empty string is returned.

func MakeBuildKey

func MakeBuildKey(c context.Context, host, buildAddress string) *datastore.Key

MakeBuildKey returns a new datastore Key for a buildbucket.Build.

There's currently no model associated with this key, but it's used as a parent for a model.BuildSummary.

func PubSubHandler

func PubSubHandler(ctx *router.Context)

PubSubHandler is a webhook that stores the builds coming in from pubsub.

func ToMiloBuild

ToMiloBuild converts a v1 buildbucket build to a milo build. Does not make RPCs. In case of an error, returns a build with a description of the error and logs the error.

func UpdatePools

func UpdatePools(c context.Context) error

UpdatePools is a cron job endpoint that: 1. Fetches all the builders from our associated Swarmbucket instance. 2. Consolidates all known descriptors (host+dimensions), saves BuilderPool. 3. Fetches and saves BotPool data from swarming for all known descriptors.

func WithClientFactory

func WithClientFactory(c context.Context, factory clientFactory) context.Context

WithClientFactory installs a buildbucket rpc client in the context.

Types

type BuilderID

type BuilderID struct {
	// BuilderID is the buildbucket v2 representation of the builder ID.  Note
	// that the v2 representation uses short bucket names.
	buildbucketpb.BuilderID
}

BuilderID represents a buildbucket builder. We wrap the underlying representation since we represent builder IDs slightly differently in Milo vs. Buildbucket. I.E. Builders can source from either BuildBot or Buildbucket.

func NewBuilderID

func NewBuilderID(v1Bucket, builder string) (bid BuilderID)

NewBuilderID does what it says.

func (BuilderID) String

func (b BuilderID) String() string

String returns the canonical format of BuilderID.

func (BuilderID) V1Bucket

func (b BuilderID) V1Bucket() string

V1Bucket returns the buildbucket v1 representation of the bucket name, which is what we use in Milo.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL