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
- func CatapultBisectWorkflow(ctx workflow.Context, p *workflows.BisectParams) (*pinpoint_proto.BisectExecution, error)
- func ConvertToCatapultResponseWorkflow(ctx workflow.Context, p *workflows.BisectParams, be *internal.BisectExecution) (*pinpoint_proto.LegacyJobResponse, error)
- func CulpritFinderWorkflow(ctx workflow.Context, cfp *workflows.CulpritFinderParams) (*pinpoint_proto.CulpritFinderExecution, error)
- func FetchCommitActivity(ctx context.Context, commit *pinpoint_proto.Commit) (*vcsinfo.LongCommit, error)
- func FetchTaskActivity(ctx context.Context, taskID string) (*apipb.TaskResultResponse, error)
- func InvokeCulpritProcessingWorkflow(ctx workflow.Context, cfp *workflows.CulpritFinderParams, ...) error
- type CatapultClient
- type DatastoreResponse
Constants ¶
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 ¶
func CulpritFinderWorkflow(ctx workflow.Context, cfp *workflows.CulpritFinderParams) (*pinpoint_proto.CulpritFinderExecution, error)
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 ¶
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