catapult

package
v0.0.0-...-d625583 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2024 License: BSD-3-Clause Imports: 33 Imported by: 0

Documentation

Overview

Package catapult contains all workflows and activities specific to making this backwards compatbile to Catapult. Once the migration from Catapult to Skia is complete, this package should be deprecated and the internal.Bisect workflow should be used directly.

Index

Constants

View Source
const (
	BisectJobNameTemplate            = "[Skia] Performance bisect on %s/%s"
	ProdPerfInternalWorkflowTemplate = "https://temporal-ui.skia.org/namespaces/perf-internal/workflows/%s"
	DevPerfInternalWorkflowTemplate  = "https://temporal-ui-dev.corp.goog/namespaces/perf-internal/workflows/%s"
)

Variables

This section is empty.

Functions

func CatapultBisectWorkflow

func CatapultBisectWorkflow(ctx workflow.Context, p *workflows.BisectParams) (*pinpoint_proto.BisectExecution, error)

CatapultBisectWorkflow is a Skia-based bisect workflow that's backwards compatible to Catapult.

By backwards compatible, it means that this workflow utilizes the Skia-based bisect, but writes the responses to Catapult via Skia-Bridge, such that the Catapult UI can display the results. Thus, the workflow method signature should be identical to internal.BisectWorkflow. This is written in its own package and in its own workflow so that it's self-contained.

func ConvertToCatapultResponseWorkflow

func ConvertToCatapultResponseWorkflow(ctx workflow.Context, p *workflows.BisectParams, be *internal.BisectExecution) (*pinpoint_proto.LegacyJobResponse, error)

ConvertToCatapultResponseWorkflow converts raw data from a Skia bisection into a Catapult-supported format.

func CulpritFinderWorkflow

CulpritFinderWorkflow confirms if an anomaly is a real regression, finds culprits for the regression and then verifies the culprit is real. This workflow is also known as the sandwich verification workflow TODO(b/322202740): Move this workflow out of the catapult folder and into the internal folder prior to deprecating the catapult directory.

func FetchCommitActivity

func FetchCommitActivity(ctx context.Context, commit *pinpoint_proto.Commit) (*vcsinfo.LongCommit, error)

FetchCommitActivity fetches commit information and modifies the provided commit with additional information.

func FetchTaskActivity

func FetchTaskActivity(ctx context.Context, taskID string) (*apipb.TaskResultResponse, error)

FetchTaskActivity fetches the task used for the given swarming task.

func InvokeCulpritProcessingWorkflow

func InvokeCulpritProcessingWorkflow(ctx workflow.Context, cfp *workflows.CulpritFinderParams,
	verified_combined_culprits []*pinpoint_proto.CombinedCommit) error

Types

type CatapultClient

type CatapultClient struct {
	// contains filtered or unexported fields
}

CatapultClient contains an httpClient for writing to catpault

func NewCatapultClient

func NewCatapultClient(ctx context.Context, prod bool) (*CatapultClient, error)

NewCatapultClient creates a new CatapultClient

func (*CatapultClient) WriteBisectToCatapult

func (cc *CatapultClient) WriteBisectToCatapult(ctx context.Context, content *pinpoint_proto.LegacyJobResponse) (*DatastoreResponse, error)

type DatastoreResponse

type DatastoreResponse struct {
	Kind string `json:"kind"`

	// Pinpoint IDs are usually int, but now that we execute workflows with
	// a UUID, Pinpoint stores the IDs as string and handles them.
	ID string `json:"id"`
}

func WriteBisectToCatapultActivity

func WriteBisectToCatapultActivity(ctx context.Context, content *pinpoint_proto.LegacyJobResponse, staging bool) (*DatastoreResponse, error)

WriteBisectToCatapultActivity wraps the call to WriteBisectToCatapult

Jump to

Keyboard shortcuts

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