bisection

package
v0.0.0-...-5519195 Latest Latest
Warning

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

Go to latest
Published: Jan 28, 2025 License: Apache-2.0 Imports: 26 Imported by: 0

Documentation

Overview

Package bisection performs bisection for test failures.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateTestRerunModel

func CreateTestRerunModel(ctx context.Context, options CreateRerunModelOptions) (*model.TestSingleRerun, error)

func IsEnabled

func IsEnabled(ctx context.Context, project string) (bool, error)

func RegisterTaskClass

func RegisterTaskClass(srv *server.Server, luciAnalysisProjectFunc func(luciProject string) string) error

RegisterTaskClass registers the task class for tq dispatcher.

func Run

func Run(ctx context.Context, analysisID int64, luciAnalysis analysis.AnalysisClient, maxRerun int) (reterr error)

Run runs bisection for the given analysisID. maxRerun controls how many reruns we can do at once. maxRerun = 1 means bisection, maxRerun = 2 means trisection...

func SaveNthSectionAnalysis

func SaveNthSectionAnalysis(ctx context.Context, nsa *model.TestNthSectionAnalysis, updateFunc func(*model.TestNthSectionAnalysis)) error

SaveNthSectionAnalysis updates nthsection analysis in a way that avoid race condition if another thread also update the analysis.

func Schedule

func Schedule(ctx context.Context, analysisID int64) error

Schedule enqueues a task to perform bisection.

func TriggerRerunBuildForCommits

func TriggerRerunBuildForCommits(ctx context.Context, tfa *model.TestFailureAnalysis, nsa *model.TestNthSectionAnalysis, projectBisector projectbisector.ProjectBisector, commitHashes []string, option projectbisector.RerunOption) error

Types

type CreateRerunModelOptions

type CreateRerunModelOptions struct {
	TestFailureAnalysis   *model.TestFailureAnalysis
	NthSectionAnalysisKey *datastore.Key
	SuspectKey            *datastore.Key
	TestFailures          []*model.TestFailure
	Build                 *bbpb.Build
	RerunType             model.RerunBuildType
}

Directories

Path Synopsis
Package analysis contains the interface to LUCI Analysis for bisector.
Package analysis contains the interface to LUCI Analysis for bisector.
Package chromium performs bisection for test failures for Chromium project.
Package chromium performs bisection for test failures for Chromium project.
Package projectbisector declare the interface that each individual project bisector needs to implement.
Package projectbisector declare the interface that each individual project bisector needs to implement.

Jump to

Keyboard shortcuts

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