tryjob

package
v0.0.0-...-2cc3bea Latest Latest
Warning

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

Go to latest
Published: May 4, 2024 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Overview

Package tryjob handles individual Tryjob handling in CV.

Index

Constants

View Source
const CancelStaleTaskClass = "cancel-stale-tryjobs"
View Source
const TryjobExecutionLogKind = "TryjobExecutionLog"

TryjobExecutionLogKind is the kind name of executionLog entity.

View Source
const (
	// TryjobKind is the Datastore entity kind for Tryjob.
	TryjobKind = "Tryjob"
)
View Source
const UpdateTaskClass = "update-tryjob"

Variables

View Source
var (
	Status_name = map[int32]string{
		0: "STATUS_UNSPECIFIED",
		1: "PENDING",
		2: "TRIGGERED",
		3: "ENDED",
		4: "CANCELLED",
		5: "UNTRIGGERED",
	}
	Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"PENDING":            1,
		"TRIGGERED":          2,
		"ENDED":              3,
		"CANCELLED":          4,
		"UNTRIGGERED":        5,
	}
)

Enum value maps for Status.

View Source
var (
	Result_Status_name = map[int32]string{
		0: "RESULT_STATUS_UNSPECIFIED",
		1: "UNKNOWN",
		2: "SUCCEEDED",
		3: "FAILED_PERMANENTLY",
		4: "FAILED_TRANSIENTLY",
		5: "TIMEOUT",
	}
	Result_Status_value = map[string]int32{
		"RESULT_STATUS_UNSPECIFIED": 0,
		"UNKNOWN":                   1,
		"SUCCEEDED":                 2,
		"FAILED_PERMANENTLY":        3,
		"FAILED_TRANSIENTLY":        4,
		"TIMEOUT":                   5,
	}
)

Enum value maps for Result_Status.

View Source
var (
	ExecutionState_Status_name = map[int32]string{
		0: "STATUS_UNSPECIFIED",
		1: "RUNNING",
		2: "FAILED",
		3: "SUCCEEDED",
	}
	ExecutionState_Status_value = map[string]int32{
		"STATUS_UNSPECIFIED": 0,
		"RUNNING":            1,
		"FAILED":             2,
		"SUCCEEDED":          3,
	}
)

Enum value maps for ExecutionState_Status.

View Source
var File_go_chromium_org_luci_cv_internal_tryjob_storage_proto protoreflect.FileDescriptor
View Source
var File_go_chromium_org_luci_cv_internal_tryjob_task_proto protoreflect.FileDescriptor

Functions

func CondDelete

func CondDelete(ctx context.Context, tjID common.TryjobID, expectedEVersion int64) error

CondDelete conditionally deletes Tryjob and corresponding tryjobMap entities.

The deletion would only proceed if the loaded tryjob has the same EVersion as the provided one. The deletion would happen in a transaction to make sure the deletion of Tryjob and tryjobMap entities are atomic.

func LoadTryjobsMapByIDs

func LoadTryjobsMapByIDs(ctx context.Context, ids []common.TryjobID) (map[common.TryjobID]*Tryjob, error)

LoadTryjobsMapByIDs get a map of tryjobs with the given ids from datastore.

func MustResolve

func MustResolve(ctx context.Context, eids ...ExternalID) common.TryjobIDs

MustResolve is like `Resolve` but panics on error

func QueryTryjobIDsUpdatedBefore

func QueryTryjobIDsUpdatedBefore(ctx context.Context, before time.Time) (common.TryjobIDs, error)

QueryTryjobIDsUpdatedBefore queries ID of all tryjobs updated before the given timestamp.

This is used for data retention purpose. Results are sorted.

func Resolve

func Resolve(ctx context.Context, eids ...ExternalID) (common.TryjobIDs, error)

Resolve converts ExternalIDs to internal TryjobIDs.

func RunWithBuilderMetricsTarget

func RunWithBuilderMetricsTarget(ctx context.Context, env *common.Env, def *Definition, cb func(context.Context))

RunWithBuilderMetricsTarget executes `cb` under the context of a Builder metrics target.

It is normally used to report metrics using Builder Target.

func SaveExecutionState

func SaveExecutionState(ctx context.Context, rid common.RunID, state *ExecutionState, expectedVersion int64, logEntries []*ExecutionLogEntry) error

SaveExecutionState saves new ExecutionState and logs for the run.

Fails if the current version of the state is different from the provided `expectedVersion`. This typically means the state has changed since the last `LoadState`. `expectedVersion==0` means the state never exists for this Run before.

Must be called in a transaction.

func SaveTryjobs

func SaveTryjobs(ctx context.Context, tryjobs []*Tryjob, notifyFn NotifyTryjobsUpdatedFn) error

SaveTryjobs saves Tryjobs to datastore and notifies the interested Runs.

Assigns a new internal ID if not given. If an external ID is given, the function saves a mapping from it to this new internal ID.

Note that if an external ID is given, it must not already map to another Tryjob, or this function will fail.

If the provided `notifyFn` is nil, notify nothing.

MUST be called in datastore transaction context.

TODO(yiwzhang): inspect the code and avoid unnecessary notification. Right now, for simplicity, notify all Runs about all Tryjobs. The Run manager will be waken up and realize there's nothing to do.

Types

type CLPatchset

type CLPatchset string

CLPatchset is a value computed combining a CL's ID and a patchset number.

This is intended to efficiently query Tryjob entities associated with a patchset.

The values are hex string encoded and padded so that lexicographical sorting will put the patchsets for a given CL together.

func MakeCLPatchset

func MakeCLPatchset(cl common.CLID, patchset int32) CLPatchset

MakeCLPatchset computes a new CLPatchset value.

func (CLPatchset) Parse

func (cp CLPatchset) Parse() (common.CLID, int32, error)

Parse extracts CLID and Patchset number from a valid CLPatchset value.

Returns an error if the format is unexpected.

type CLPatchsets

type CLPatchsets []CLPatchset

CLPatchsets is a slice of `CLPatchset`s.

Implements sort.Interface

func (CLPatchsets) Len

func (c CLPatchsets) Len() int

Len implements sort.Interface.

func (CLPatchsets) Less

func (c CLPatchsets) Less(i int, j int) bool

Less implements sort.Interface.

func (CLPatchsets) Swap

func (c CLPatchsets) Swap(i int, j int)

Swap implements sort.Interface.

type CancelStaleTryjobsTask

type CancelStaleTryjobsTask struct {

	// clid is the ID that identifies a CL entity. Internal to CV.
	Clid int64 `protobuf:"varint,1,opt,name=clid,proto3" json:"clid,omitempty"`
	// previous_min_equiv_patchset is the patchset that stale tryjobs will be
	// running at.
	PreviousMinEquivPatchset int32 `` /* 138-byte string literal not displayed */
	// current_min_equiv_patchset is the patchset at or after which the
	// associated Tryjobs are no longer considered stale.
	CurrentMinEquivPatchset int32 `` /* 135-byte string literal not displayed */
	// contains filtered or unexported fields
}

CancelStaleTryjobs cancels all Tryjobs that are intended to verify the given CL, that are now stale because a new non-trivial patchset has been uploaded.

Queue: "cancel-stale-tryjobs"

func (*CancelStaleTryjobsTask) Descriptor deprecated

func (*CancelStaleTryjobsTask) Descriptor() ([]byte, []int)

Deprecated: Use CancelStaleTryjobsTask.ProtoReflect.Descriptor instead.

func (*CancelStaleTryjobsTask) GetClid

func (x *CancelStaleTryjobsTask) GetClid() int64

func (*CancelStaleTryjobsTask) GetCurrentMinEquivPatchset

func (x *CancelStaleTryjobsTask) GetCurrentMinEquivPatchset() int32

func (*CancelStaleTryjobsTask) GetPreviousMinEquivPatchset

func (x *CancelStaleTryjobsTask) GetPreviousMinEquivPatchset() int32

func (*CancelStaleTryjobsTask) ProtoMessage

func (*CancelStaleTryjobsTask) ProtoMessage()

func (*CancelStaleTryjobsTask) ProtoReflect

func (x *CancelStaleTryjobsTask) ProtoReflect() protoreflect.Message

func (*CancelStaleTryjobsTask) Reset

func (x *CancelStaleTryjobsTask) Reset()

func (*CancelStaleTryjobsTask) String

func (x *CancelStaleTryjobsTask) String() string

func (*CancelStaleTryjobsTask) Validate

func (m *CancelStaleTryjobsTask) Validate() error

Validate checks the field values on CancelStaleTryjobsTask with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*CancelStaleTryjobsTask) ValidateAll

func (m *CancelStaleTryjobsTask) ValidateAll() error

ValidateAll checks the field values on CancelStaleTryjobsTask with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in CancelStaleTryjobsTaskMultiError, or nil if none found.

type CancelStaleTryjobsTaskMultiError

type CancelStaleTryjobsTaskMultiError []error

CancelStaleTryjobsTaskMultiError is an error wrapping multiple validation errors returned by CancelStaleTryjobsTask.ValidateAll() if the designated constraints aren't met.

func (CancelStaleTryjobsTaskMultiError) AllErrors

func (m CancelStaleTryjobsTaskMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (CancelStaleTryjobsTaskMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type CancelStaleTryjobsTaskValidationError

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

CancelStaleTryjobsTaskValidationError is the validation error returned by CancelStaleTryjobsTask.Validate if the designated constraints aren't met.

func (CancelStaleTryjobsTaskValidationError) Cause

Cause function returns cause value.

func (CancelStaleTryjobsTaskValidationError) Error

Error satisfies the builtin error interface

func (CancelStaleTryjobsTaskValidationError) ErrorName

ErrorName returns error name.

func (CancelStaleTryjobsTaskValidationError) Field

Field function returns field value.

func (CancelStaleTryjobsTaskValidationError) Key

Key function returns key value.

func (CancelStaleTryjobsTaskValidationError) Reason

Reason function returns reason value.

type Definition

type Definition struct {

	// Types that are assignable to Backend:
	//
	//	*Definition_Buildbucket_
	Backend isDefinition_Backend `protobuf_oneof:"backend"`
	// If set, existing tryjob matching this definition is deemed equivalent
	// to the primary Definition.
	//
	// Note that recursive `equivalent_to` is not supported. Also, this doesn't
	// affect triggering a new tryjob.
	EquivalentTo *Definition `protobuf:"bytes,2,opt,name=equivalent_to,json=equivalentTo,proto3" json:"equivalent_to,omitempty"`
	// If true, trigger a new tryjob using this Definition regardless of whether
	// reusable tryjobs exist.
	DisableReuse bool `protobuf:"varint,3,opt,name=disable_reuse,json=disableReuse,proto3" json:"disable_reuse,omitempty"`
	// If true, CV should let this Tryjob run even if it becomes stale,
	// e.g. by a new non-trivial patchset on one of this Tryjob's CLs.
	//
	// If the Tryjob is not triggered by CV, then this is value is ignored and in
	// effect it's assumed true. That is, we don't cancel tryjobs not triggered
	// by CV.
	SkipStaleCheck bool `protobuf:"varint,4,opt,name=skip_stale_check,json=skipStaleCheck,proto3" json:"skip_stale_check,omitempty"`
	// If true, the Tryjob is deemed critical for the Run to succeed, i.e. the
	// Run will fail unless one of the attempts of this Tryjob is successful.
	Critical bool `protobuf:"varint,5,opt,name=critical,proto3" json:"critical,omitempty"`
	// If true, the Tryjob will be marked as optional.
	//
	// Optional Tryjobs are generally not critical. However, an optional Tryjob
	// could be critical iff it is requested explicitly (i.e. via git footer).
	Optional bool `protobuf:"varint,8,opt,name=optional,proto3" json:"optional,omitempty"`
	// If set to restricted, CV should only post generic messages such as
	//
	//	"Build failed: https://ci.chromium.org/b/1234"
	//
	// and no summary markdown about tryjobs with this definition.
	ResultVisibility v2.CommentLevel `` /* 138-byte string literal not displayed */
	// Experiments to enable when launching Tryjob.
	Experiments []string `protobuf:"bytes,9,rep,name=experiments,proto3" json:"experiments,omitempty"`
	// contains filtered or unexported fields
}

Definition defines what a Tryjob should do.

It must be sufficient to trigger a new tryjob.

func (*Definition) Descriptor deprecated

func (*Definition) Descriptor() ([]byte, []int)

Deprecated: Use Definition.ProtoReflect.Descriptor instead.

func (*Definition) GetBackend

func (m *Definition) GetBackend() isDefinition_Backend

func (*Definition) GetBuildbucket

func (x *Definition) GetBuildbucket() *Definition_Buildbucket

func (*Definition) GetCritical

func (x *Definition) GetCritical() bool

func (*Definition) GetDisableReuse

func (x *Definition) GetDisableReuse() bool

func (*Definition) GetEquivalentTo

func (x *Definition) GetEquivalentTo() *Definition

func (*Definition) GetExperiments

func (x *Definition) GetExperiments() []string

func (*Definition) GetOptional

func (x *Definition) GetOptional() bool

func (*Definition) GetResultVisibility

func (x *Definition) GetResultVisibility() v2.CommentLevel

func (*Definition) GetSkipStaleCheck

func (x *Definition) GetSkipStaleCheck() bool

func (*Definition) ProtoMessage

func (*Definition) ProtoMessage()

func (*Definition) ProtoReflect

func (x *Definition) ProtoReflect() protoreflect.Message

func (*Definition) Reset

func (x *Definition) Reset()

func (*Definition) String

func (x *Definition) String() string

func (*Definition) Validate

func (m *Definition) Validate() error

Validate checks the field values on Definition with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*Definition) ValidateAll

func (m *Definition) ValidateAll() error

ValidateAll checks the field values on Definition with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in DefinitionMultiError, or nil if none found.

type DefinitionMultiError

type DefinitionMultiError []error

DefinitionMultiError is an error wrapping multiple validation errors returned by Definition.ValidateAll() if the designated constraints aren't met.

func (DefinitionMultiError) AllErrors

func (m DefinitionMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (DefinitionMultiError) Error

func (m DefinitionMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

type DefinitionValidationError

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

DefinitionValidationError is the validation error returned by Definition.Validate if the designated constraints aren't met.

func (DefinitionValidationError) Cause

func (e DefinitionValidationError) Cause() error

Cause function returns cause value.

func (DefinitionValidationError) Error

Error satisfies the builtin error interface

func (DefinitionValidationError) ErrorName

func (e DefinitionValidationError) ErrorName() string

ErrorName returns error name.

func (DefinitionValidationError) Field

Field function returns field value.

func (DefinitionValidationError) Key

Key function returns key value.

func (DefinitionValidationError) Reason

func (e DefinitionValidationError) Reason() string

Reason function returns reason value.

type Definition_Buildbucket

type Definition_Buildbucket struct {
	Host    string           `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
	Builder *proto.BuilderID `protobuf:"bytes,2,opt,name=builder,proto3" json:"builder,omitempty"`
	// contains filtered or unexported fields
}

func (*Definition_Buildbucket) Descriptor deprecated

func (*Definition_Buildbucket) Descriptor() ([]byte, []int)

Deprecated: Use Definition_Buildbucket.ProtoReflect.Descriptor instead.

func (*Definition_Buildbucket) GetBuilder

func (x *Definition_Buildbucket) GetBuilder() *proto.BuilderID

func (*Definition_Buildbucket) GetHost

func (x *Definition_Buildbucket) GetHost() string

func (*Definition_Buildbucket) ProtoMessage

func (*Definition_Buildbucket) ProtoMessage()

func (*Definition_Buildbucket) ProtoReflect

func (x *Definition_Buildbucket) ProtoReflect() protoreflect.Message

func (*Definition_Buildbucket) Reset

func (x *Definition_Buildbucket) Reset()

func (*Definition_Buildbucket) String

func (x *Definition_Buildbucket) String() string

func (*Definition_Buildbucket) Validate

func (m *Definition_Buildbucket) Validate() error

Validate checks the field values on Definition_Buildbucket with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*Definition_Buildbucket) ValidateAll

func (m *Definition_Buildbucket) ValidateAll() error

ValidateAll checks the field values on Definition_Buildbucket with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in Definition_BuildbucketMultiError, or nil if none found.

type Definition_BuildbucketMultiError

type Definition_BuildbucketMultiError []error

Definition_BuildbucketMultiError is an error wrapping multiple validation errors returned by Definition_Buildbucket.ValidateAll() if the designated constraints aren't met.

func (Definition_BuildbucketMultiError) AllErrors

func (m Definition_BuildbucketMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (Definition_BuildbucketMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type Definition_BuildbucketValidationError

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

Definition_BuildbucketValidationError is the validation error returned by Definition_Buildbucket.Validate if the designated constraints aren't met.

func (Definition_BuildbucketValidationError) Cause

Cause function returns cause value.

func (Definition_BuildbucketValidationError) Error

Error satisfies the builtin error interface

func (Definition_BuildbucketValidationError) ErrorName

ErrorName returns error name.

func (Definition_BuildbucketValidationError) Field

Field function returns field value.

func (Definition_BuildbucketValidationError) Key

Key function returns key value.

func (Definition_BuildbucketValidationError) Reason

Reason function returns reason value.

type Definition_Buildbucket_

type Definition_Buildbucket_ struct {
	// For buildbucket, it's just a builder.
	Buildbucket *Definition_Buildbucket `protobuf:"bytes,1,opt,name=buildbucket,proto3,oneof"`
}

type ExecuteTryjobsPayload

type ExecuteTryjobsPayload struct {

	// RequirementChanged indicates the Tryjob Requirement of the Run has
	// changed.
	RequirementChanged bool `protobuf:"varint,1,opt,name=requirement_changed,json=requirementChanged,proto3" json:"requirement_changed,omitempty"`
	// TryjobsUpdated contains IDs of all Tryjobs that have status updates.
	TryjobsUpdated []int64 `protobuf:"varint,2,rep,packed,name=tryjobs_updated,json=tryjobsUpdated,proto3" json:"tryjobs_updated,omitempty"`
	// contains filtered or unexported fields
}

ExecuteTryjobsPayload is the payload of the long-op task that invokes the Tryjob Executor.

The payload contains the event happens outside so that Tryjob Executor could react on the event.

Exactly one event should be provided. Not using oneof for the sake of simplicity.

func (*ExecuteTryjobsPayload) Descriptor deprecated

func (*ExecuteTryjobsPayload) Descriptor() ([]byte, []int)

Deprecated: Use ExecuteTryjobsPayload.ProtoReflect.Descriptor instead.

func (*ExecuteTryjobsPayload) GetRequirementChanged

func (x *ExecuteTryjobsPayload) GetRequirementChanged() bool

func (*ExecuteTryjobsPayload) GetTryjobsUpdated

func (x *ExecuteTryjobsPayload) GetTryjobsUpdated() []int64

func (*ExecuteTryjobsPayload) ProtoMessage

func (*ExecuteTryjobsPayload) ProtoMessage()

func (*ExecuteTryjobsPayload) ProtoReflect

func (x *ExecuteTryjobsPayload) ProtoReflect() protoreflect.Message

func (*ExecuteTryjobsPayload) Reset

func (x *ExecuteTryjobsPayload) Reset()

func (*ExecuteTryjobsPayload) String

func (x *ExecuteTryjobsPayload) String() string

func (*ExecuteTryjobsPayload) Validate

func (m *ExecuteTryjobsPayload) Validate() error

Validate checks the field values on ExecuteTryjobsPayload with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecuteTryjobsPayload) ValidateAll

func (m *ExecuteTryjobsPayload) ValidateAll() error

ValidateAll checks the field values on ExecuteTryjobsPayload with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecuteTryjobsPayloadMultiError, or nil if none found.

type ExecuteTryjobsPayloadMultiError

type ExecuteTryjobsPayloadMultiError []error

ExecuteTryjobsPayloadMultiError is an error wrapping multiple validation errors returned by ExecuteTryjobsPayload.ValidateAll() if the designated constraints aren't met.

func (ExecuteTryjobsPayloadMultiError) AllErrors

func (m ExecuteTryjobsPayloadMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (ExecuteTryjobsPayloadMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecuteTryjobsPayloadValidationError

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

ExecuteTryjobsPayloadValidationError is the validation error returned by ExecuteTryjobsPayload.Validate if the designated constraints aren't met.

func (ExecuteTryjobsPayloadValidationError) Cause

Cause function returns cause value.

func (ExecuteTryjobsPayloadValidationError) Error

Error satisfies the builtin error interface

func (ExecuteTryjobsPayloadValidationError) ErrorName

ErrorName returns error name.

func (ExecuteTryjobsPayloadValidationError) Field

Field function returns field value.

func (ExecuteTryjobsPayloadValidationError) Key

Key function returns key value.

func (ExecuteTryjobsPayloadValidationError) Reason

Reason function returns reason value.

type ExecuteTryjobsResult

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

ExecuteTryjobsResult is the result of Tryjob executor.

func (*ExecuteTryjobsResult) Descriptor deprecated

func (*ExecuteTryjobsResult) Descriptor() ([]byte, []int)

Deprecated: Use ExecuteTryjobsResult.ProtoReflect.Descriptor instead.

func (*ExecuteTryjobsResult) ProtoMessage

func (*ExecuteTryjobsResult) ProtoMessage()

func (*ExecuteTryjobsResult) ProtoReflect

func (x *ExecuteTryjobsResult) ProtoReflect() protoreflect.Message

func (*ExecuteTryjobsResult) Reset

func (x *ExecuteTryjobsResult) Reset()

func (*ExecuteTryjobsResult) String

func (x *ExecuteTryjobsResult) String() string

func (*ExecuteTryjobsResult) Validate

func (m *ExecuteTryjobsResult) Validate() error

Validate checks the field values on ExecuteTryjobsResult with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecuteTryjobsResult) ValidateAll

func (m *ExecuteTryjobsResult) ValidateAll() error

ValidateAll checks the field values on ExecuteTryjobsResult with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecuteTryjobsResultMultiError, or nil if none found.

type ExecuteTryjobsResultMultiError

type ExecuteTryjobsResultMultiError []error

ExecuteTryjobsResultMultiError is an error wrapping multiple validation errors returned by ExecuteTryjobsResult.ValidateAll() if the designated constraints aren't met.

func (ExecuteTryjobsResultMultiError) AllErrors

func (m ExecuteTryjobsResultMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (ExecuteTryjobsResultMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecuteTryjobsResultValidationError

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

ExecuteTryjobsResultValidationError is the validation error returned by ExecuteTryjobsResult.Validate if the designated constraints aren't met.

func (ExecuteTryjobsResultValidationError) Cause

Cause function returns cause value.

func (ExecuteTryjobsResultValidationError) Error

Error satisfies the builtin error interface

func (ExecuteTryjobsResultValidationError) ErrorName

ErrorName returns error name.

func (ExecuteTryjobsResultValidationError) Field

Field function returns field value.

func (ExecuteTryjobsResultValidationError) Key

Key function returns key value.

func (ExecuteTryjobsResultValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntries

type ExecutionLogEntries struct {
	Entries []*ExecutionLogEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
	// contains filtered or unexported fields
}

ExecutionLogEntries contains a list of log entries ordered by time.

func (*ExecutionLogEntries) Descriptor deprecated

func (*ExecutionLogEntries) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntries.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntries) GetEntries

func (x *ExecutionLogEntries) GetEntries() []*ExecutionLogEntry

func (*ExecutionLogEntries) ProtoMessage

func (*ExecutionLogEntries) ProtoMessage()

func (*ExecutionLogEntries) ProtoReflect

func (x *ExecutionLogEntries) ProtoReflect() protoreflect.Message

func (*ExecutionLogEntries) Reset

func (x *ExecutionLogEntries) Reset()

func (*ExecutionLogEntries) String

func (x *ExecutionLogEntries) String() string

func (*ExecutionLogEntries) Validate

func (m *ExecutionLogEntries) Validate() error

Validate checks the field values on ExecutionLogEntries with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntries) ValidateAll

func (m *ExecutionLogEntries) ValidateAll() error

ValidateAll checks the field values on ExecutionLogEntries with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntriesMultiError, or nil if none found.

type ExecutionLogEntriesMultiError

type ExecutionLogEntriesMultiError []error

ExecutionLogEntriesMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntries.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntriesMultiError) AllErrors

func (m ExecutionLogEntriesMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntriesMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntriesValidationError

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

ExecutionLogEntriesValidationError is the validation error returned by ExecutionLogEntries.Validate if the designated constraints aren't met.

func (ExecutionLogEntriesValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntriesValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntriesValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntriesValidationError) Field

Field function returns field value.

func (ExecutionLogEntriesValidationError) Key

Key function returns key value.

func (ExecutionLogEntriesValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry

type ExecutionLogEntry struct {

	// Time is when the event occurs.
	Time *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=time,proto3" json:"time,omitempty"`
	// Types that are assignable to Kind:
	//
	//	*ExecutionLogEntry_RequirementChanged_
	//	*ExecutionLogEntry_TryjobsLaunched_
	//	*ExecutionLogEntry_TryjobsLaunchFailed_
	//	*ExecutionLogEntry_TryjobsReused_
	//	*ExecutionLogEntry_TryjobsEnded_
	//	*ExecutionLogEntry_TryjobDiscarded_
	//	*ExecutionLogEntry_RetryDenied_
	Kind isExecutionLogEntry_Kind `protobuf_oneof:"kind"`
	// contains filtered or unexported fields
}

ExecutionLogEntry records what happened during Tryjob Execution.

func LoadExecutionLogs

func LoadExecutionLogs(ctx context.Context, runID common.RunID) ([]*ExecutionLogEntry, error)

LoadExecutionLogs loads all the Tryjob execution log entries for a given Run.

Ordered from logically oldest to newest as it assumes logs associated with a smaller ExecutionState EVersion should happen earlier than the logs associated with a larger ExecutionState EVersion.

func (*ExecutionLogEntry) Descriptor deprecated

func (*ExecutionLogEntry) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry) GetKind

func (m *ExecutionLogEntry) GetKind() isExecutionLogEntry_Kind

func (*ExecutionLogEntry) GetRequirementChanged

func (x *ExecutionLogEntry) GetRequirementChanged() *ExecutionLogEntry_RequirementChanged

func (*ExecutionLogEntry) GetRetryDenied

func (x *ExecutionLogEntry) GetRetryDenied() *ExecutionLogEntry_RetryDenied

func (*ExecutionLogEntry) GetTime

func (x *ExecutionLogEntry) GetTime() *timestamppb.Timestamp

func (*ExecutionLogEntry) GetTryjobDiscarded

func (x *ExecutionLogEntry) GetTryjobDiscarded() *ExecutionLogEntry_TryjobDiscarded

func (*ExecutionLogEntry) GetTryjobsEnded

func (x *ExecutionLogEntry) GetTryjobsEnded() *ExecutionLogEntry_TryjobsEnded

func (*ExecutionLogEntry) GetTryjobsLaunchFailed

func (x *ExecutionLogEntry) GetTryjobsLaunchFailed() *ExecutionLogEntry_TryjobsLaunchFailed

func (*ExecutionLogEntry) GetTryjobsLaunched

func (x *ExecutionLogEntry) GetTryjobsLaunched() *ExecutionLogEntry_TryjobsLaunched

func (*ExecutionLogEntry) GetTryjobsReused

func (x *ExecutionLogEntry) GetTryjobsReused() *ExecutionLogEntry_TryjobsReused

func (*ExecutionLogEntry) ProtoMessage

func (*ExecutionLogEntry) ProtoMessage()

func (*ExecutionLogEntry) ProtoReflect

func (x *ExecutionLogEntry) ProtoReflect() protoreflect.Message

func (*ExecutionLogEntry) Reset

func (x *ExecutionLogEntry) Reset()

func (*ExecutionLogEntry) String

func (x *ExecutionLogEntry) String() string

func (*ExecutionLogEntry) Validate

func (m *ExecutionLogEntry) Validate() error

Validate checks the field values on ExecutionLogEntry with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry) ValidateAll

func (m *ExecutionLogEntry) ValidateAll() error

ValidateAll checks the field values on ExecutionLogEntry with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntryMultiError, or nil if none found.

type ExecutionLogEntryMultiError

type ExecutionLogEntryMultiError []error

ExecutionLogEntryMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntryMultiError) AllErrors

func (m ExecutionLogEntryMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntryMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntryValidationError

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

ExecutionLogEntryValidationError is the validation error returned by ExecutionLogEntry.Validate if the designated constraints aren't met.

func (ExecutionLogEntryValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntryValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntryValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntryValidationError) Field

Field function returns field value.

func (ExecutionLogEntryValidationError) Key

Key function returns key value.

func (ExecutionLogEntryValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_RequirementChanged

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

func (*ExecutionLogEntry_RequirementChanged) Descriptor deprecated

func (*ExecutionLogEntry_RequirementChanged) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_RequirementChanged.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_RequirementChanged) ProtoMessage

func (*ExecutionLogEntry_RequirementChanged) ProtoMessage()

func (*ExecutionLogEntry_RequirementChanged) ProtoReflect

func (*ExecutionLogEntry_RequirementChanged) Reset

func (*ExecutionLogEntry_RequirementChanged) String

func (*ExecutionLogEntry_RequirementChanged) Validate

Validate checks the field values on ExecutionLogEntry_RequirementChanged with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_RequirementChanged) ValidateAll

ValidateAll checks the field values on ExecutionLogEntry_RequirementChanged with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_RequirementChangedMultiError, or nil if none found.

type ExecutionLogEntry_RequirementChangedMultiError

type ExecutionLogEntry_RequirementChangedMultiError []error

ExecutionLogEntry_RequirementChangedMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_RequirementChanged.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_RequirementChangedMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_RequirementChangedMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_RequirementChangedValidationError

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

ExecutionLogEntry_RequirementChangedValidationError is the validation error returned by ExecutionLogEntry_RequirementChanged.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_RequirementChangedValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_RequirementChangedValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_RequirementChangedValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_RequirementChangedValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_RequirementChangedValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_RequirementChangedValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_RequirementChanged_

type ExecutionLogEntry_RequirementChanged_ struct {
	RequirementChanged *ExecutionLogEntry_RequirementChanged `protobuf:"bytes,2,opt,name=requirement_changed,json=requirementChanged,proto3,oneof"`
}

type ExecutionLogEntry_RetryDenied

type ExecutionLogEntry_RetryDenied struct {
	Tryjobs []*ExecutionLogEntry_TryjobSnapshot `protobuf:"bytes,1,rep,name=tryjobs,proto3" json:"tryjobs,omitempty"`
	Reason  string                              `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionLogEntry_RetryDenied) Descriptor deprecated

func (*ExecutionLogEntry_RetryDenied) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_RetryDenied.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_RetryDenied) GetReason

func (x *ExecutionLogEntry_RetryDenied) GetReason() string

func (*ExecutionLogEntry_RetryDenied) GetTryjobs

func (*ExecutionLogEntry_RetryDenied) ProtoMessage

func (*ExecutionLogEntry_RetryDenied) ProtoMessage()

func (*ExecutionLogEntry_RetryDenied) ProtoReflect

func (*ExecutionLogEntry_RetryDenied) Reset

func (x *ExecutionLogEntry_RetryDenied) Reset()

func (*ExecutionLogEntry_RetryDenied) String

func (*ExecutionLogEntry_RetryDenied) Validate

func (m *ExecutionLogEntry_RetryDenied) Validate() error

Validate checks the field values on ExecutionLogEntry_RetryDenied with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_RetryDenied) ValidateAll

func (m *ExecutionLogEntry_RetryDenied) ValidateAll() error

ValidateAll checks the field values on ExecutionLogEntry_RetryDenied with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_RetryDeniedMultiError, or nil if none found.

type ExecutionLogEntry_RetryDeniedMultiError

type ExecutionLogEntry_RetryDeniedMultiError []error

ExecutionLogEntry_RetryDeniedMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_RetryDenied.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_RetryDeniedMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_RetryDeniedMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_RetryDeniedValidationError

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

ExecutionLogEntry_RetryDeniedValidationError is the validation error returned by ExecutionLogEntry_RetryDenied.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_RetryDeniedValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_RetryDeniedValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_RetryDeniedValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_RetryDeniedValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_RetryDeniedValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_RetryDeniedValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_RetryDenied_

type ExecutionLogEntry_RetryDenied_ struct {
	RetryDenied *ExecutionLogEntry_RetryDenied `protobuf:"bytes,9,opt,name=retry_denied,json=retryDenied,proto3,oneof"`
}

type ExecutionLogEntry_TryjobDiscarded

type ExecutionLogEntry_TryjobDiscarded struct {
	Snapshot *ExecutionLogEntry_TryjobSnapshot `protobuf:"bytes,1,opt,name=snapshot,proto3" json:"snapshot,omitempty"`
	Reason   string                            `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionLogEntry_TryjobDiscarded) Descriptor deprecated

func (*ExecutionLogEntry_TryjobDiscarded) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_TryjobDiscarded.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_TryjobDiscarded) GetReason

func (*ExecutionLogEntry_TryjobDiscarded) GetSnapshot

func (*ExecutionLogEntry_TryjobDiscarded) ProtoMessage

func (*ExecutionLogEntry_TryjobDiscarded) ProtoMessage()

func (*ExecutionLogEntry_TryjobDiscarded) ProtoReflect

func (*ExecutionLogEntry_TryjobDiscarded) Reset

func (*ExecutionLogEntry_TryjobDiscarded) String

func (*ExecutionLogEntry_TryjobDiscarded) Validate

Validate checks the field values on ExecutionLogEntry_TryjobDiscarded with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_TryjobDiscarded) ValidateAll

func (m *ExecutionLogEntry_TryjobDiscarded) ValidateAll() error

ValidateAll checks the field values on ExecutionLogEntry_TryjobDiscarded with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_TryjobDiscardedMultiError, or nil if none found.

type ExecutionLogEntry_TryjobDiscardedMultiError

type ExecutionLogEntry_TryjobDiscardedMultiError []error

ExecutionLogEntry_TryjobDiscardedMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_TryjobDiscarded.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobDiscardedMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_TryjobDiscardedMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_TryjobDiscardedValidationError

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

ExecutionLogEntry_TryjobDiscardedValidationError is the validation error returned by ExecutionLogEntry_TryjobDiscarded.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobDiscardedValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_TryjobDiscardedValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_TryjobDiscardedValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_TryjobDiscardedValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_TryjobDiscardedValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_TryjobDiscardedValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_TryjobDiscarded_

type ExecutionLogEntry_TryjobDiscarded_ struct {
	TryjobDiscarded *ExecutionLogEntry_TryjobDiscarded `protobuf:"bytes,7,opt,name=tryjob_discarded,json=tryjobDiscarded,proto3,oneof"`
}

type ExecutionLogEntry_TryjobLaunchFailed

type ExecutionLogEntry_TryjobLaunchFailed struct {
	Definition *Definition `protobuf:"bytes,1,opt,name=definition,proto3" json:"definition,omitempty"`
	Reason     string      `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionLogEntry_TryjobLaunchFailed) Descriptor deprecated

func (*ExecutionLogEntry_TryjobLaunchFailed) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_TryjobLaunchFailed.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_TryjobLaunchFailed) GetDefinition

func (*ExecutionLogEntry_TryjobLaunchFailed) GetReason

func (*ExecutionLogEntry_TryjobLaunchFailed) ProtoMessage

func (*ExecutionLogEntry_TryjobLaunchFailed) ProtoMessage()

func (*ExecutionLogEntry_TryjobLaunchFailed) ProtoReflect

func (*ExecutionLogEntry_TryjobLaunchFailed) Reset

func (*ExecutionLogEntry_TryjobLaunchFailed) String

func (*ExecutionLogEntry_TryjobLaunchFailed) Validate

Validate checks the field values on ExecutionLogEntry_TryjobLaunchFailed with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_TryjobLaunchFailed) ValidateAll

ValidateAll checks the field values on ExecutionLogEntry_TryjobLaunchFailed with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_TryjobLaunchFailedMultiError, or nil if none found.

type ExecutionLogEntry_TryjobLaunchFailedMultiError

type ExecutionLogEntry_TryjobLaunchFailedMultiError []error

ExecutionLogEntry_TryjobLaunchFailedMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_TryjobLaunchFailed.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobLaunchFailedMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_TryjobLaunchFailedMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_TryjobLaunchFailedValidationError

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

ExecutionLogEntry_TryjobLaunchFailedValidationError is the validation error returned by ExecutionLogEntry_TryjobLaunchFailed.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobLaunchFailedValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_TryjobLaunchFailedValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_TryjobLaunchFailedValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_TryjobLaunchFailedValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_TryjobLaunchFailedValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_TryjobLaunchFailedValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_TryjobSnapshot

type ExecutionLogEntry_TryjobSnapshot struct {
	Id         int64       `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	ExternalId string      `protobuf:"bytes,2,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
	Definition *Definition `protobuf:"bytes,3,opt,name=definition,proto3" json:"definition,omitempty"`
	Status     Status      `protobuf:"varint,4,opt,name=status,proto3,enum=cv.internal.tryjob.Status" json:"status,omitempty"`
	Result     *Result     `protobuf:"bytes,5,opt,name=result,proto3" json:"result,omitempty"`
	Reused     bool        `protobuf:"varint,6,opt,name=reused,proto3" json:"reused,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionLogEntry_TryjobSnapshot) Descriptor deprecated

func (*ExecutionLogEntry_TryjobSnapshot) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_TryjobSnapshot.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_TryjobSnapshot) GetDefinition

func (x *ExecutionLogEntry_TryjobSnapshot) GetDefinition() *Definition

func (*ExecutionLogEntry_TryjobSnapshot) GetExternalId

func (x *ExecutionLogEntry_TryjobSnapshot) GetExternalId() string

func (*ExecutionLogEntry_TryjobSnapshot) GetId

func (*ExecutionLogEntry_TryjobSnapshot) GetResult

func (x *ExecutionLogEntry_TryjobSnapshot) GetResult() *Result

func (*ExecutionLogEntry_TryjobSnapshot) GetReused

func (x *ExecutionLogEntry_TryjobSnapshot) GetReused() bool

func (*ExecutionLogEntry_TryjobSnapshot) GetStatus

func (*ExecutionLogEntry_TryjobSnapshot) ProtoMessage

func (*ExecutionLogEntry_TryjobSnapshot) ProtoMessage()

func (*ExecutionLogEntry_TryjobSnapshot) ProtoReflect

func (*ExecutionLogEntry_TryjobSnapshot) Reset

func (*ExecutionLogEntry_TryjobSnapshot) String

func (*ExecutionLogEntry_TryjobSnapshot) Validate

Validate checks the field values on ExecutionLogEntry_TryjobSnapshot with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_TryjobSnapshot) ValidateAll

func (m *ExecutionLogEntry_TryjobSnapshot) ValidateAll() error

ValidateAll checks the field values on ExecutionLogEntry_TryjobSnapshot with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_TryjobSnapshotMultiError, or nil if none found.

type ExecutionLogEntry_TryjobSnapshotMultiError

type ExecutionLogEntry_TryjobSnapshotMultiError []error

ExecutionLogEntry_TryjobSnapshotMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_TryjobSnapshot.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobSnapshotMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_TryjobSnapshotMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_TryjobSnapshotValidationError

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

ExecutionLogEntry_TryjobSnapshotValidationError is the validation error returned by ExecutionLogEntry_TryjobSnapshot.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobSnapshotValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_TryjobSnapshotValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_TryjobSnapshotValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_TryjobSnapshotValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_TryjobSnapshotValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_TryjobSnapshotValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_TryjobsEnded

type ExecutionLogEntry_TryjobsEnded struct {
	Tryjobs []*ExecutionLogEntry_TryjobSnapshot `protobuf:"bytes,2,rep,name=tryjobs,proto3" json:"tryjobs,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionLogEntry_TryjobsEnded) Descriptor deprecated

func (*ExecutionLogEntry_TryjobsEnded) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_TryjobsEnded.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_TryjobsEnded) GetTryjobs

func (*ExecutionLogEntry_TryjobsEnded) ProtoMessage

func (*ExecutionLogEntry_TryjobsEnded) ProtoMessage()

func (*ExecutionLogEntry_TryjobsEnded) ProtoReflect

func (*ExecutionLogEntry_TryjobsEnded) Reset

func (x *ExecutionLogEntry_TryjobsEnded) Reset()

func (*ExecutionLogEntry_TryjobsEnded) String

func (*ExecutionLogEntry_TryjobsEnded) Validate

func (m *ExecutionLogEntry_TryjobsEnded) Validate() error

Validate checks the field values on ExecutionLogEntry_TryjobsEnded with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_TryjobsEnded) ValidateAll

func (m *ExecutionLogEntry_TryjobsEnded) ValidateAll() error

ValidateAll checks the field values on ExecutionLogEntry_TryjobsEnded with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_TryjobsEndedMultiError, or nil if none found.

type ExecutionLogEntry_TryjobsEndedMultiError

type ExecutionLogEntry_TryjobsEndedMultiError []error

ExecutionLogEntry_TryjobsEndedMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_TryjobsEnded.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobsEndedMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_TryjobsEndedMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_TryjobsEndedValidationError

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

ExecutionLogEntry_TryjobsEndedValidationError is the validation error returned by ExecutionLogEntry_TryjobsEnded.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobsEndedValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_TryjobsEndedValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_TryjobsEndedValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_TryjobsEndedValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_TryjobsEndedValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_TryjobsEndedValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_TryjobsEnded_

type ExecutionLogEntry_TryjobsEnded_ struct {
	TryjobsEnded *ExecutionLogEntry_TryjobsEnded `protobuf:"bytes,8,opt,name=tryjobs_ended,json=tryjobsEnded,proto3,oneof"`
}

type ExecutionLogEntry_TryjobsLaunchFailed

type ExecutionLogEntry_TryjobsLaunchFailed struct {
	Tryjobs []*ExecutionLogEntry_TryjobLaunchFailed `protobuf:"bytes,1,rep,name=tryjobs,proto3" json:"tryjobs,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionLogEntry_TryjobsLaunchFailed) Descriptor deprecated

func (*ExecutionLogEntry_TryjobsLaunchFailed) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_TryjobsLaunchFailed.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_TryjobsLaunchFailed) GetTryjobs

func (*ExecutionLogEntry_TryjobsLaunchFailed) ProtoMessage

func (*ExecutionLogEntry_TryjobsLaunchFailed) ProtoMessage()

func (*ExecutionLogEntry_TryjobsLaunchFailed) ProtoReflect

func (*ExecutionLogEntry_TryjobsLaunchFailed) Reset

func (*ExecutionLogEntry_TryjobsLaunchFailed) String

func (*ExecutionLogEntry_TryjobsLaunchFailed) Validate

Validate checks the field values on ExecutionLogEntry_TryjobsLaunchFailed with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_TryjobsLaunchFailed) ValidateAll

ValidateAll checks the field values on ExecutionLogEntry_TryjobsLaunchFailed with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_TryjobsLaunchFailedMultiError, or nil if none found.

type ExecutionLogEntry_TryjobsLaunchFailedMultiError

type ExecutionLogEntry_TryjobsLaunchFailedMultiError []error

ExecutionLogEntry_TryjobsLaunchFailedMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_TryjobsLaunchFailed.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobsLaunchFailedMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_TryjobsLaunchFailedMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_TryjobsLaunchFailedValidationError

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

ExecutionLogEntry_TryjobsLaunchFailedValidationError is the validation error returned by ExecutionLogEntry_TryjobsLaunchFailed.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobsLaunchFailedValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_TryjobsLaunchFailedValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_TryjobsLaunchFailedValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_TryjobsLaunchFailedValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_TryjobsLaunchFailedValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_TryjobsLaunchFailedValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_TryjobsLaunchFailed_

type ExecutionLogEntry_TryjobsLaunchFailed_ struct {
	TryjobsLaunchFailed *ExecutionLogEntry_TryjobsLaunchFailed `protobuf:"bytes,4,opt,name=tryjobs_launch_failed,json=tryjobsLaunchFailed,proto3,oneof"`
}

type ExecutionLogEntry_TryjobsLaunched

type ExecutionLogEntry_TryjobsLaunched struct {
	Tryjobs []*ExecutionLogEntry_TryjobSnapshot `protobuf:"bytes,2,rep,name=tryjobs,proto3" json:"tryjobs,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionLogEntry_TryjobsLaunched) Descriptor deprecated

func (*ExecutionLogEntry_TryjobsLaunched) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_TryjobsLaunched.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_TryjobsLaunched) GetTryjobs

func (*ExecutionLogEntry_TryjobsLaunched) ProtoMessage

func (*ExecutionLogEntry_TryjobsLaunched) ProtoMessage()

func (*ExecutionLogEntry_TryjobsLaunched) ProtoReflect

func (*ExecutionLogEntry_TryjobsLaunched) Reset

func (*ExecutionLogEntry_TryjobsLaunched) String

func (*ExecutionLogEntry_TryjobsLaunched) Validate

Validate checks the field values on ExecutionLogEntry_TryjobsLaunched with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_TryjobsLaunched) ValidateAll

func (m *ExecutionLogEntry_TryjobsLaunched) ValidateAll() error

ValidateAll checks the field values on ExecutionLogEntry_TryjobsLaunched with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_TryjobsLaunchedMultiError, or nil if none found.

type ExecutionLogEntry_TryjobsLaunchedMultiError

type ExecutionLogEntry_TryjobsLaunchedMultiError []error

ExecutionLogEntry_TryjobsLaunchedMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_TryjobsLaunched.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobsLaunchedMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_TryjobsLaunchedMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_TryjobsLaunchedValidationError

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

ExecutionLogEntry_TryjobsLaunchedValidationError is the validation error returned by ExecutionLogEntry_TryjobsLaunched.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobsLaunchedValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_TryjobsLaunchedValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_TryjobsLaunchedValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_TryjobsLaunchedValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_TryjobsLaunchedValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_TryjobsLaunchedValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_TryjobsLaunched_

type ExecutionLogEntry_TryjobsLaunched_ struct {
	TryjobsLaunched *ExecutionLogEntry_TryjobsLaunched `protobuf:"bytes,3,opt,name=tryjobs_launched,json=tryjobsLaunched,proto3,oneof"`
}

type ExecutionLogEntry_TryjobsReused

type ExecutionLogEntry_TryjobsReused struct {
	Tryjobs []*ExecutionLogEntry_TryjobSnapshot `protobuf:"bytes,2,rep,name=tryjobs,proto3" json:"tryjobs,omitempty"`
	// contains filtered or unexported fields
}

func (*ExecutionLogEntry_TryjobsReused) Descriptor deprecated

func (*ExecutionLogEntry_TryjobsReused) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionLogEntry_TryjobsReused.ProtoReflect.Descriptor instead.

func (*ExecutionLogEntry_TryjobsReused) GetTryjobs

func (*ExecutionLogEntry_TryjobsReused) ProtoMessage

func (*ExecutionLogEntry_TryjobsReused) ProtoMessage()

func (*ExecutionLogEntry_TryjobsReused) ProtoReflect

func (*ExecutionLogEntry_TryjobsReused) Reset

func (*ExecutionLogEntry_TryjobsReused) String

func (*ExecutionLogEntry_TryjobsReused) Validate

func (m *ExecutionLogEntry_TryjobsReused) Validate() error

Validate checks the field values on ExecutionLogEntry_TryjobsReused with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionLogEntry_TryjobsReused) ValidateAll

func (m *ExecutionLogEntry_TryjobsReused) ValidateAll() error

ValidateAll checks the field values on ExecutionLogEntry_TryjobsReused with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionLogEntry_TryjobsReusedMultiError, or nil if none found.

type ExecutionLogEntry_TryjobsReusedMultiError

type ExecutionLogEntry_TryjobsReusedMultiError []error

ExecutionLogEntry_TryjobsReusedMultiError is an error wrapping multiple validation errors returned by ExecutionLogEntry_TryjobsReused.ValidateAll() if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobsReusedMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionLogEntry_TryjobsReusedMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionLogEntry_TryjobsReusedValidationError

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

ExecutionLogEntry_TryjobsReusedValidationError is the validation error returned by ExecutionLogEntry_TryjobsReused.Validate if the designated constraints aren't met.

func (ExecutionLogEntry_TryjobsReusedValidationError) Cause

Cause function returns cause value.

func (ExecutionLogEntry_TryjobsReusedValidationError) Error

Error satisfies the builtin error interface

func (ExecutionLogEntry_TryjobsReusedValidationError) ErrorName

ErrorName returns error name.

func (ExecutionLogEntry_TryjobsReusedValidationError) Field

Field function returns field value.

func (ExecutionLogEntry_TryjobsReusedValidationError) Key

Key function returns key value.

func (ExecutionLogEntry_TryjobsReusedValidationError) Reason

Reason function returns reason value.

type ExecutionLogEntry_TryjobsReused_

type ExecutionLogEntry_TryjobsReused_ struct {
	TryjobsReused *ExecutionLogEntry_TryjobsReused `protobuf:"bytes,5,opt,name=tryjobs_reused,json=tryjobsReused,proto3,oneof"`
}

type ExecutionState

type ExecutionState struct {

	// Executions track the execution state of all required Tryjobs.
	//
	// It is one to one mapped to `requirement.definitions`
	Executions []*ExecutionState_Execution `protobuf:"bytes,1,rep,name=executions,proto3" json:"executions,omitempty"`
	// Requirement is the requirement that is currently being worked on.
	Requirement *Requirement `protobuf:"bytes,2,opt,name=requirement,proto3" json:"requirement,omitempty"`
	// The version of the requirement that is currently being worked on.
	RequirementVersion int32 `protobuf:"varint,5,opt,name=requirement_version,json=requirementVersion,proto3" json:"requirement_version,omitempty"`
	// Status will be set to SUCCEEDED if all Tryjobs succeed,
	// FAILED if at least one Tryjob fails and cannot be retried,
	// or RUNNING otherwise.
	Status ExecutionState_Status `protobuf:"varint,3,opt,name=status,proto3,enum=cv.internal.tryjob.ExecutionState_Status" json:"status,omitempty"`
	// Failures describe why the Tryjob execution has failed.
	//
	// Must set if status == FAILED.
	Failures *ExecutionState_Failures `protobuf:"bytes,8,opt,name=failures,proto3" json:"failures,omitempty"`
	// The time when the executions end with a terminal status
	EndTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	// contains filtered or unexported fields
}

ExecutionState is the state of executing Tryjobs requirement.

func LoadExecutionState

func LoadExecutionState(ctx context.Context, rid common.RunID) (state *ExecutionState, version int64, err error)

LoadExecutionState loads the ExecutionState of the given Run.

Returns nil state and 0 version if execution state never exists for this Run before.

func (*ExecutionState) Descriptor deprecated

func (*ExecutionState) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionState.ProtoReflect.Descriptor instead.

func (*ExecutionState) GetEndTime

func (x *ExecutionState) GetEndTime() *timestamppb.Timestamp

func (*ExecutionState) GetExecutions

func (x *ExecutionState) GetExecutions() []*ExecutionState_Execution

func (*ExecutionState) GetFailures

func (x *ExecutionState) GetFailures() *ExecutionState_Failures

func (*ExecutionState) GetRequirement

func (x *ExecutionState) GetRequirement() *Requirement

func (*ExecutionState) GetRequirementVersion

func (x *ExecutionState) GetRequirementVersion() int32

func (*ExecutionState) GetStatus

func (x *ExecutionState) GetStatus() ExecutionState_Status

func (*ExecutionState) ProtoMessage

func (*ExecutionState) ProtoMessage()

func (*ExecutionState) ProtoReflect

func (x *ExecutionState) ProtoReflect() protoreflect.Message

func (*ExecutionState) Reset

func (x *ExecutionState) Reset()

func (*ExecutionState) String

func (x *ExecutionState) String() string

func (*ExecutionState) Validate

func (m *ExecutionState) Validate() error

Validate checks the field values on ExecutionState with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionState) ValidateAll

func (m *ExecutionState) ValidateAll() error

ValidateAll checks the field values on ExecutionState with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionStateMultiError, or nil if none found.

type ExecutionStateMultiError

type ExecutionStateMultiError []error

ExecutionStateMultiError is an error wrapping multiple validation errors returned by ExecutionState.ValidateAll() if the designated constraints aren't met.

func (ExecutionStateMultiError) AllErrors

func (m ExecutionStateMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (ExecutionStateMultiError) Error

func (m ExecutionStateMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

type ExecutionStateValidationError

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

ExecutionStateValidationError is the validation error returned by ExecutionState.Validate if the designated constraints aren't met.

func (ExecutionStateValidationError) Cause

Cause function returns cause value.

func (ExecutionStateValidationError) Error

Error satisfies the builtin error interface

func (ExecutionStateValidationError) ErrorName

func (e ExecutionStateValidationError) ErrorName() string

ErrorName returns error name.

func (ExecutionStateValidationError) Field

Field function returns field value.

func (ExecutionStateValidationError) Key

Key function returns key value.

func (ExecutionStateValidationError) Reason

Reason function returns reason value.

type ExecutionState_Execution

type ExecutionState_Execution struct {

	// Attempts records all attempts (including retries) to verify the Run with
	// this Tryjob Execution.
	Attempts []*ExecutionState_Execution_Attempt `protobuf:"bytes,2,rep,name=attempts,proto3" json:"attempts,omitempty"`
	// UsedQuota is the quota consumed for retrying the execution of this
	// Tryjob.
	UsedQuota int32 `protobuf:"varint,3,opt,name=used_quota,json=usedQuota,proto3" json:"used_quota,omitempty"`
	// contains filtered or unexported fields
}

Execution tracks the execution state of each individual Tryjob requirement.

func (*ExecutionState_Execution) Descriptor deprecated

func (*ExecutionState_Execution) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionState_Execution.ProtoReflect.Descriptor instead.

func (*ExecutionState_Execution) GetAttempts

func (*ExecutionState_Execution) GetUsedQuota

func (x *ExecutionState_Execution) GetUsedQuota() int32

func (*ExecutionState_Execution) ProtoMessage

func (*ExecutionState_Execution) ProtoMessage()

func (*ExecutionState_Execution) ProtoReflect

func (x *ExecutionState_Execution) ProtoReflect() protoreflect.Message

func (*ExecutionState_Execution) Reset

func (x *ExecutionState_Execution) Reset()

func (*ExecutionState_Execution) String

func (x *ExecutionState_Execution) String() string

func (*ExecutionState_Execution) Validate

func (m *ExecutionState_Execution) Validate() error

Validate checks the field values on ExecutionState_Execution with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionState_Execution) ValidateAll

func (m *ExecutionState_Execution) ValidateAll() error

ValidateAll checks the field values on ExecutionState_Execution with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionState_ExecutionMultiError, or nil if none found.

type ExecutionState_ExecutionMultiError

type ExecutionState_ExecutionMultiError []error

ExecutionState_ExecutionMultiError is an error wrapping multiple validation errors returned by ExecutionState_Execution.ValidateAll() if the designated constraints aren't met.

func (ExecutionState_ExecutionMultiError) AllErrors

func (m ExecutionState_ExecutionMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (ExecutionState_ExecutionMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionState_ExecutionValidationError

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

ExecutionState_ExecutionValidationError is the validation error returned by ExecutionState_Execution.Validate if the designated constraints aren't met.

func (ExecutionState_ExecutionValidationError) Cause

Cause function returns cause value.

func (ExecutionState_ExecutionValidationError) Error

Error satisfies the builtin error interface

func (ExecutionState_ExecutionValidationError) ErrorName

ErrorName returns error name.

func (ExecutionState_ExecutionValidationError) Field

Field function returns field value.

func (ExecutionState_ExecutionValidationError) Key

Key function returns key value.

func (ExecutionState_ExecutionValidationError) Reason

Reason function returns reason value.

type ExecutionState_Execution_Attempt

type ExecutionState_Execution_Attempt struct {

	// TryjobId is the ID of this attempt of the Tryjob.
	TryjobId int64 `protobuf:"varint,1,opt,name=tryjob_id,json=tryjobId,proto3" json:"tryjob_id,omitempty"`
	// ExternalID is the external ID of this attempt of the Tryjob
	ExternalId string `protobuf:"bytes,2,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
	// Status is the status of this attempt of the Tryjob.
	Status Status `protobuf:"varint,3,opt,name=status,proto3,enum=cv.internal.tryjob.Status" json:"status,omitempty"`
	// Result of this attempt of the Tryjob.
	Result *Result `protobuf:"bytes,4,opt,name=result,proto3" json:"result,omitempty"`
	// Reused indicates the current attempt of the Tryjob wasn't triggered
	// by CV for this Run specifically.
	//
	// In other words, either:
	//   - the Tryjob was triggered by CV for a previous Run, or
	//   - the Tryjob was triggered by non-CV (e.g. `git cl try`).
	Reused bool `protobuf:"varint,5,opt,name=reused,proto3" json:"reused,omitempty"`
	// contains filtered or unexported fields
}

Attempt represents each attempt to complete an execution.

Failed attempt will trigger a retry attempt if quota allows.

func LatestAttempt

LatestAttempt returns the latest attempt of the given Tryjob Execution.

Returns nil if the Tryjob execution doesn't have any attempt yet.

func (*ExecutionState_Execution_Attempt) Descriptor deprecated

func (*ExecutionState_Execution_Attempt) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionState_Execution_Attempt.ProtoReflect.Descriptor instead.

func (*ExecutionState_Execution_Attempt) GetExternalId

func (x *ExecutionState_Execution_Attempt) GetExternalId() string

func (*ExecutionState_Execution_Attempt) GetResult

func (x *ExecutionState_Execution_Attempt) GetResult() *Result

func (*ExecutionState_Execution_Attempt) GetReused

func (x *ExecutionState_Execution_Attempt) GetReused() bool

func (*ExecutionState_Execution_Attempt) GetStatus

func (*ExecutionState_Execution_Attempt) GetTryjobId

func (x *ExecutionState_Execution_Attempt) GetTryjobId() int64

func (*ExecutionState_Execution_Attempt) ProtoMessage

func (*ExecutionState_Execution_Attempt) ProtoMessage()

func (*ExecutionState_Execution_Attempt) ProtoReflect

func (*ExecutionState_Execution_Attempt) Reset

func (*ExecutionState_Execution_Attempt) String

func (*ExecutionState_Execution_Attempt) Validate

Validate checks the field values on ExecutionState_Execution_Attempt with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionState_Execution_Attempt) ValidateAll

func (m *ExecutionState_Execution_Attempt) ValidateAll() error

ValidateAll checks the field values on ExecutionState_Execution_Attempt with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionState_Execution_AttemptMultiError, or nil if none found.

type ExecutionState_Execution_AttemptMultiError

type ExecutionState_Execution_AttemptMultiError []error

ExecutionState_Execution_AttemptMultiError is an error wrapping multiple validation errors returned by ExecutionState_Execution_Attempt.ValidateAll() if the designated constraints aren't met.

func (ExecutionState_Execution_AttemptMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionState_Execution_AttemptMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionState_Execution_AttemptValidationError

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

ExecutionState_Execution_AttemptValidationError is the validation error returned by ExecutionState_Execution_Attempt.Validate if the designated constraints aren't met.

func (ExecutionState_Execution_AttemptValidationError) Cause

Cause function returns cause value.

func (ExecutionState_Execution_AttemptValidationError) Error

Error satisfies the builtin error interface

func (ExecutionState_Execution_AttemptValidationError) ErrorName

ErrorName returns error name.

func (ExecutionState_Execution_AttemptValidationError) Field

Field function returns field value.

func (ExecutionState_Execution_AttemptValidationError) Key

Key function returns key value.

func (ExecutionState_Execution_AttemptValidationError) Reason

Reason function returns reason value.

type ExecutionState_Failures

type ExecutionState_Failures struct {
	LaunchFailures      []*ExecutionState_Failures_LaunchFailure      `protobuf:"bytes,1,rep,name=launch_failures,json=launchFailures,proto3" json:"launch_failures,omitempty"`
	UnsuccessfulResults []*ExecutionState_Failures_UnsuccessfulResult `protobuf:"bytes,2,rep,name=unsuccessful_results,json=unsuccessfulResults,proto3" json:"unsuccessful_results,omitempty"`
	// contains filtered or unexported fields
}

Failures describe why the Tryjobs execution fails.

func (*ExecutionState_Failures) Descriptor deprecated

func (*ExecutionState_Failures) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionState_Failures.ProtoReflect.Descriptor instead.

func (*ExecutionState_Failures) GetLaunchFailures

func (*ExecutionState_Failures) GetUnsuccessfulResults

func (*ExecutionState_Failures) ProtoMessage

func (*ExecutionState_Failures) ProtoMessage()

func (*ExecutionState_Failures) ProtoReflect

func (x *ExecutionState_Failures) ProtoReflect() protoreflect.Message

func (*ExecutionState_Failures) Reset

func (x *ExecutionState_Failures) Reset()

func (*ExecutionState_Failures) String

func (x *ExecutionState_Failures) String() string

func (*ExecutionState_Failures) Validate

func (m *ExecutionState_Failures) Validate() error

Validate checks the field values on ExecutionState_Failures with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionState_Failures) ValidateAll

func (m *ExecutionState_Failures) ValidateAll() error

ValidateAll checks the field values on ExecutionState_Failures with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionState_FailuresMultiError, or nil if none found.

type ExecutionState_FailuresMultiError

type ExecutionState_FailuresMultiError []error

ExecutionState_FailuresMultiError is an error wrapping multiple validation errors returned by ExecutionState_Failures.ValidateAll() if the designated constraints aren't met.

func (ExecutionState_FailuresMultiError) AllErrors

func (m ExecutionState_FailuresMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (ExecutionState_FailuresMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionState_FailuresValidationError

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

ExecutionState_FailuresValidationError is the validation error returned by ExecutionState_Failures.Validate if the designated constraints aren't met.

func (ExecutionState_FailuresValidationError) Cause

Cause function returns cause value.

func (ExecutionState_FailuresValidationError) Error

Error satisfies the builtin error interface

func (ExecutionState_FailuresValidationError) ErrorName

ErrorName returns error name.

func (ExecutionState_FailuresValidationError) Field

Field function returns field value.

func (ExecutionState_FailuresValidationError) Key

Key function returns key value.

func (ExecutionState_FailuresValidationError) Reason

Reason function returns reason value.

type ExecutionState_Failures_LaunchFailure

type ExecutionState_Failures_LaunchFailure struct {
	Definition *Definition `protobuf:"bytes,1,opt,name=definition,proto3" json:"definition,omitempty"`
	Reason     string      `protobuf:"bytes,2,opt,name=reason,proto3" json:"reason,omitempty"`
	// contains filtered or unexported fields
}

LaunchFailure describes why a Tryjob fails to launch. For example, CV doesn't have the permission to launch the Tryjob.

func (*ExecutionState_Failures_LaunchFailure) Descriptor deprecated

func (*ExecutionState_Failures_LaunchFailure) Descriptor() ([]byte, []int)

Deprecated: Use ExecutionState_Failures_LaunchFailure.ProtoReflect.Descriptor instead.

func (*ExecutionState_Failures_LaunchFailure) GetDefinition

func (*ExecutionState_Failures_LaunchFailure) GetReason

func (*ExecutionState_Failures_LaunchFailure) ProtoMessage

func (*ExecutionState_Failures_LaunchFailure) ProtoMessage()

func (*ExecutionState_Failures_LaunchFailure) ProtoReflect

func (*ExecutionState_Failures_LaunchFailure) Reset

func (*ExecutionState_Failures_LaunchFailure) String

func (*ExecutionState_Failures_LaunchFailure) Validate

Validate checks the field values on ExecutionState_Failures_LaunchFailure with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionState_Failures_LaunchFailure) ValidateAll

ValidateAll checks the field values on ExecutionState_Failures_LaunchFailure with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionState_Failures_LaunchFailureMultiError, or nil if none found.

type ExecutionState_Failures_LaunchFailureMultiError

type ExecutionState_Failures_LaunchFailureMultiError []error

ExecutionState_Failures_LaunchFailureMultiError is an error wrapping multiple validation errors returned by ExecutionState_Failures_LaunchFailure.ValidateAll() if the designated constraints aren't met.

func (ExecutionState_Failures_LaunchFailureMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionState_Failures_LaunchFailureMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionState_Failures_LaunchFailureValidationError

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

ExecutionState_Failures_LaunchFailureValidationError is the validation error returned by ExecutionState_Failures_LaunchFailure.Validate if the designated constraints aren't met.

func (ExecutionState_Failures_LaunchFailureValidationError) Cause

Cause function returns cause value.

func (ExecutionState_Failures_LaunchFailureValidationError) Error

Error satisfies the builtin error interface

func (ExecutionState_Failures_LaunchFailureValidationError) ErrorName

ErrorName returns error name.

func (ExecutionState_Failures_LaunchFailureValidationError) Field

Field function returns field value.

func (ExecutionState_Failures_LaunchFailureValidationError) Key

Key function returns key value.

func (ExecutionState_Failures_LaunchFailureValidationError) Reason

Reason function returns reason value.

type ExecutionState_Failures_UnsuccessfulResult

type ExecutionState_Failures_UnsuccessfulResult struct {
	TryjobId int64 `protobuf:"varint,1,opt,name=tryjob_id,json=tryjobId,proto3" json:"tryjob_id,omitempty"`
	// contains filtered or unexported fields
}

UnsuccessfulResult contains the ID of the tryjob that ends with non-successful result status (i.e. Build failure).

func (*ExecutionState_Failures_UnsuccessfulResult) Descriptor deprecated

Deprecated: Use ExecutionState_Failures_UnsuccessfulResult.ProtoReflect.Descriptor instead.

func (*ExecutionState_Failures_UnsuccessfulResult) GetTryjobId

func (*ExecutionState_Failures_UnsuccessfulResult) ProtoMessage

func (*ExecutionState_Failures_UnsuccessfulResult) ProtoReflect

func (*ExecutionState_Failures_UnsuccessfulResult) Reset

func (*ExecutionState_Failures_UnsuccessfulResult) String

func (*ExecutionState_Failures_UnsuccessfulResult) Validate

Validate checks the field values on ExecutionState_Failures_UnsuccessfulResult with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*ExecutionState_Failures_UnsuccessfulResult) ValidateAll

ValidateAll checks the field values on ExecutionState_Failures_UnsuccessfulResult with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ExecutionState_Failures_UnsuccessfulResultMultiError, or nil if none found.

type ExecutionState_Failures_UnsuccessfulResultMultiError

type ExecutionState_Failures_UnsuccessfulResultMultiError []error

ExecutionState_Failures_UnsuccessfulResultMultiError is an error wrapping multiple validation errors returned by ExecutionState_Failures_UnsuccessfulResult.ValidateAll() if the designated constraints aren't met.

func (ExecutionState_Failures_UnsuccessfulResultMultiError) AllErrors

AllErrors returns a list of validation violation errors.

func (ExecutionState_Failures_UnsuccessfulResultMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type ExecutionState_Failures_UnsuccessfulResultValidationError

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

ExecutionState_Failures_UnsuccessfulResultValidationError is the validation error returned by ExecutionState_Failures_UnsuccessfulResult.Validate if the designated constraints aren't met.

func (ExecutionState_Failures_UnsuccessfulResultValidationError) Cause

Cause function returns cause value.

func (ExecutionState_Failures_UnsuccessfulResultValidationError) Error

Error satisfies the builtin error interface

func (ExecutionState_Failures_UnsuccessfulResultValidationError) ErrorName

ErrorName returns error name.

func (ExecutionState_Failures_UnsuccessfulResultValidationError) Field

Field function returns field value.

func (ExecutionState_Failures_UnsuccessfulResultValidationError) Key

Key function returns key value.

func (ExecutionState_Failures_UnsuccessfulResultValidationError) Reason

Reason function returns reason value.

type ExecutionState_Status

type ExecutionState_Status int32

Status describes the summarized status of the overall Tryjob execution.

const (
	// Unspecified is never used.
	ExecutionState_STATUS_UNSPECIFIED ExecutionState_Status = 0
	// At least one critical Tryjob is not yet finished so its result is
	// unknown.
	ExecutionState_RUNNING ExecutionState_Status = 1
	// At least one critical Tryjob in the state failed and cannot be retried.
	ExecutionState_FAILED ExecutionState_Status = 2
	// All the critical Tryjobs in the execution state succeeded.
	ExecutionState_SUCCEEDED ExecutionState_Status = 3
)

func (ExecutionState_Status) Descriptor

func (ExecutionState_Status) Enum

func (ExecutionState_Status) EnumDescriptor deprecated

func (ExecutionState_Status) EnumDescriptor() ([]byte, []int)

Deprecated: Use ExecutionState_Status.Descriptor instead.

func (ExecutionState_Status) Number

func (ExecutionState_Status) String

func (x ExecutionState_Status) String() string

func (ExecutionState_Status) Type

type ExternalID

type ExternalID string

ExternalID is a unique ID deterministically constructed to identify Tryjobs.

Currently, only Buildbucket is supported.

func BuildbucketID

func BuildbucketID(host string, build int64) (ExternalID, error)

BuildbucketID makes an ExternalID for a Buildbucket build.

Host is typically "cr-buildbucket.appspot.com". Build is a number, e.g. 8839722009404151168 for https://ci.chromium.org/ui/p/infra/builders/try/infra-try-bionic-64/b8839722009404151168/overview

func MustBuildbucketID

func MustBuildbucketID(host string, build int64) ExternalID

MustBuildbucketID is like `BuildbucketID()` but panics on error.

func (ExternalID) Kind

func (e ExternalID) Kind() (string, error)

Kind identifies the backend that corresponds to the tryjob this ExternalID applies to.

func (ExternalID) Load

func (e ExternalID) Load(ctx context.Context) (*Tryjob, error)

Load looks up a Tryjob entity.

If an entity referred to by the ExternalID does not exist in CV, `nil, nil` will be returned.

func (ExternalID) MustCreateIfNotExists

func (e ExternalID) MustCreateIfNotExists(ctx context.Context) *Tryjob

MustCreateIfNotExists is intended for testing only.

If a Tryjob with this ExternalID exists, the Tryjob is loaded from datastore. If it does not, it is created, saved and returned.

Panics on error.

func (ExternalID) MustLoad

func (e ExternalID) MustLoad(ctx context.Context) *Tryjob

MustLoad is like `Load` but panics on error.

func (ExternalID) MustParseBuildbucketID

func (e ExternalID) MustParseBuildbucketID() (string, int64)

MustParseBuildbucketID is like `ParseBuildbucketID` but panics on error

func (ExternalID) MustURL

func (e ExternalID) MustURL() string

MustURL is like `URL()` but panics on err.

func (ExternalID) ParseBuildbucketID

func (e ExternalID) ParseBuildbucketID() (host string, build int64, err error)

ParseBuildbucketID returns the Buildbucket host and build if this is a BuildbucketID.

func (ExternalID) URL

func (e ExternalID) URL() (string, error)

URL returns the Buildbucket URL of the Tryjob.

type Notifier

type Notifier struct {
	Bindings TaskBindings
}

Notifier exports tryjob management methods.

func NewNotifier

func NewNotifier(tqd *tq.Dispatcher) *Notifier

NewNotifier creates a Notifier and registers tryjob management task classes.

func (*Notifier) ScheduleCancelStale

func (n *Notifier) ScheduleCancelStale(ctx context.Context, clid common.CLID, gtePatchset, ltPatchset int32, eta time.Time) error

ScheduleCancelStale schedules a task at the given `eta` that cancels the tryjobs that involes the patchset of a CL that is larger than or equal to `gtePatchset` and smaller than `ltPatchset`.

Passing zero `eta` will schedule the task immediately.

func (*Notifier) ScheduleUpdate

func (n *Notifier) ScheduleUpdate(ctx context.Context, id common.TryjobID, eid ExternalID) error

ScheduleUpdate schedules a task to update the given tryjob. At least one ID must be given.

type NotifyTryjobsUpdatedFn

type NotifyTryjobsUpdatedFn func(context.Context, common.RunID, *TryjobUpdatedEvents) error

NotifyTryjobsUpdatedFn is used to notify Run about the updated Tryjobs.

type Requirement

type Requirement struct {

	// Definitions is the definitions of all Tryjobs that should be triggered
	// to verify a specific Run.
	Definitions []*Definition `protobuf:"bytes,1,rep,name=definitions,proto3" json:"definitions,omitempty"`
	// RetryConfig specifies retries allowed in case of Tryjob failure.
	//
	// No retry allowed if nil.
	RetryConfig *v2.Verifiers_Tryjob_RetryConfig `protobuf:"bytes,2,opt,name=retry_config,json=retryConfig,proto3" json:"retry_config,omitempty"`
	// contains filtered or unexported fields
}

Requirement is what has to happen to verify a specific Run.

It is computed based on the Project Config and specifics of the Run.

func (*Requirement) Descriptor deprecated

func (*Requirement) Descriptor() ([]byte, []int)

Deprecated: Use Requirement.ProtoReflect.Descriptor instead.

func (*Requirement) GetDefinitions

func (x *Requirement) GetDefinitions() []*Definition

func (*Requirement) GetRetryConfig

func (x *Requirement) GetRetryConfig() *v2.Verifiers_Tryjob_RetryConfig

func (*Requirement) ProtoMessage

func (*Requirement) ProtoMessage()

func (*Requirement) ProtoReflect

func (x *Requirement) ProtoReflect() protoreflect.Message

func (*Requirement) Reset

func (x *Requirement) Reset()

func (*Requirement) String

func (x *Requirement) String() string

func (*Requirement) Validate

func (m *Requirement) Validate() error

Validate checks the field values on Requirement with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*Requirement) ValidateAll

func (m *Requirement) ValidateAll() error

ValidateAll checks the field values on Requirement with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in RequirementMultiError, or nil if none found.

type RequirementMultiError

type RequirementMultiError []error

RequirementMultiError is an error wrapping multiple validation errors returned by Requirement.ValidateAll() if the designated constraints aren't met.

func (RequirementMultiError) AllErrors

func (m RequirementMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (RequirementMultiError) Error

func (m RequirementMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

type RequirementValidationError

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

RequirementValidationError is the validation error returned by Requirement.Validate if the designated constraints aren't met.

func (RequirementValidationError) Cause

Cause function returns cause value.

func (RequirementValidationError) Error

Error satisfies the builtin error interface

func (RequirementValidationError) ErrorName

func (e RequirementValidationError) ErrorName() string

ErrorName returns error name.

func (RequirementValidationError) Field

Field function returns field value.

func (RequirementValidationError) Key

Key function returns key value.

func (RequirementValidationError) Reason

Reason function returns reason value.

type Result

type Result struct {

	// Status of the Result.
	//
	// This is the verdict of verification of Run's CLs by this Tryjob.
	Status Result_Status `protobuf:"varint,1,opt,name=status,proto3,enum=cv.internal.tryjob.Result_Status" json:"status,omitempty"`
	// Time when the Tryjob was created in the backend.
	//
	// This is used by CV to determine if the Tryjob is fresh enough to be used
	// to verify a Run.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Time when the Tryjob was last updated in the backend.
	//
	// This is used by CV to determine if it needs to refresh Tryjob's Result by
	// querying its backend.
	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	// Output is a rich result of a Tryjob.
	// This includes details related to retry and reuse.
	//
	// It's typically set by LUCI recipes.
	Output *v1.Output `protobuf:"bytes,4,opt,name=output,proto3" json:"output,omitempty"`
	// Backend houses backend-specific output.
	//
	// Types that are assignable to Backend:
	//
	//	*Result_Buildbucket_
	Backend isResult_Backend `protobuf_oneof:"backend"`
	// contains filtered or unexported fields
}

Result of a Tryjob.

It's interpreted by the Run Manager.

func (*Result) Descriptor deprecated

func (*Result) Descriptor() ([]byte, []int)

Deprecated: Use Result.ProtoReflect.Descriptor instead.

func (*Result) GetBackend

func (m *Result) GetBackend() isResult_Backend

func (*Result) GetBuildbucket

func (x *Result) GetBuildbucket() *Result_Buildbucket

func (*Result) GetCreateTime

func (x *Result) GetCreateTime() *timestamppb.Timestamp

func (*Result) GetOutput

func (x *Result) GetOutput() *v1.Output

func (*Result) GetStatus

func (x *Result) GetStatus() Result_Status

func (*Result) GetUpdateTime

func (x *Result) GetUpdateTime() *timestamppb.Timestamp

func (*Result) ProtoMessage

func (*Result) ProtoMessage()

func (*Result) ProtoReflect

func (x *Result) ProtoReflect() protoreflect.Message

func (*Result) Reset

func (x *Result) Reset()

func (*Result) String

func (x *Result) String() string

func (*Result) Validate

func (m *Result) Validate() error

Validate checks the field values on Result with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*Result) ValidateAll

func (m *Result) ValidateAll() error

ValidateAll checks the field values on Result with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in ResultMultiError, or nil if none found.

type ResultMultiError

type ResultMultiError []error

ResultMultiError is an error wrapping multiple validation errors returned by Result.ValidateAll() if the designated constraints aren't met.

func (ResultMultiError) AllErrors

func (m ResultMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (ResultMultiError) Error

func (m ResultMultiError) Error() string

Error returns a concatenation of all the error messages it wraps.

type ResultValidationError

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

ResultValidationError is the validation error returned by Result.Validate if the designated constraints aren't met.

func (ResultValidationError) Cause

func (e ResultValidationError) Cause() error

Cause function returns cause value.

func (ResultValidationError) Error

func (e ResultValidationError) Error() string

Error satisfies the builtin error interface

func (ResultValidationError) ErrorName

func (e ResultValidationError) ErrorName() string

ErrorName returns error name.

func (ResultValidationError) Field

func (e ResultValidationError) Field() string

Field function returns field value.

func (ResultValidationError) Key

func (e ResultValidationError) Key() bool

Key function returns key value.

func (ResultValidationError) Reason

func (e ResultValidationError) Reason() string

Reason function returns reason value.

type Result_Buildbucket

type Result_Buildbucket struct {
	Id      int64            `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Builder *proto.BuilderID `protobuf:"bytes,4,opt,name=builder,proto3" json:"builder,omitempty"`
	Status  proto.Status     `protobuf:"varint,2,opt,name=status,proto3,enum=buildbucket.v2.Status" json:"status,omitempty"`
	// SummaryMarkdown is a field containing a human readable summary of the
	// build's result.
	SummaryMarkdown string `protobuf:"bytes,3,opt,name=summary_markdown,json=summaryMarkdown,proto3" json:"summary_markdown,omitempty"`
	// Infra metadata from Buildbucket.
	//
	// NOTE: This ONLY supports ResultDB metadata and excludes the rest.
	// See go/src/go.chromium.org/luci/buildbucket/proto/build.proto.
	Infra *proto.BuildInfra `protobuf:"bytes,5,opt,name=infra,proto3" json:"infra,omitempty"`
	// contains filtered or unexported fields
}

func (*Result_Buildbucket) Descriptor deprecated

func (*Result_Buildbucket) Descriptor() ([]byte, []int)

Deprecated: Use Result_Buildbucket.ProtoReflect.Descriptor instead.

func (*Result_Buildbucket) GetBuilder

func (x *Result_Buildbucket) GetBuilder() *proto.BuilderID

func (*Result_Buildbucket) GetId

func (x *Result_Buildbucket) GetId() int64

func (*Result_Buildbucket) GetInfra

func (x *Result_Buildbucket) GetInfra() *proto.BuildInfra

func (*Result_Buildbucket) GetStatus

func (x *Result_Buildbucket) GetStatus() proto.Status

func (*Result_Buildbucket) GetSummaryMarkdown

func (x *Result_Buildbucket) GetSummaryMarkdown() string

func (*Result_Buildbucket) ProtoMessage

func (*Result_Buildbucket) ProtoMessage()

func (*Result_Buildbucket) ProtoReflect

func (x *Result_Buildbucket) ProtoReflect() protoreflect.Message

func (*Result_Buildbucket) Reset

func (x *Result_Buildbucket) Reset()

func (*Result_Buildbucket) String

func (x *Result_Buildbucket) String() string

func (*Result_Buildbucket) Validate

func (m *Result_Buildbucket) Validate() error

Validate checks the field values on Result_Buildbucket with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*Result_Buildbucket) ValidateAll

func (m *Result_Buildbucket) ValidateAll() error

ValidateAll checks the field values on Result_Buildbucket with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in Result_BuildbucketMultiError, or nil if none found.

type Result_BuildbucketMultiError

type Result_BuildbucketMultiError []error

Result_BuildbucketMultiError is an error wrapping multiple validation errors returned by Result_Buildbucket.ValidateAll() if the designated constraints aren't met.

func (Result_BuildbucketMultiError) AllErrors

func (m Result_BuildbucketMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (Result_BuildbucketMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type Result_BuildbucketValidationError

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

Result_BuildbucketValidationError is the validation error returned by Result_Buildbucket.Validate if the designated constraints aren't met.

func (Result_BuildbucketValidationError) Cause

Cause function returns cause value.

func (Result_BuildbucketValidationError) Error

Error satisfies the builtin error interface

func (Result_BuildbucketValidationError) ErrorName

ErrorName returns error name.

func (Result_BuildbucketValidationError) Field

Field function returns field value.

func (Result_BuildbucketValidationError) Key

Key function returns key value.

func (Result_BuildbucketValidationError) Reason

Reason function returns reason value.

type Result_Buildbucket_

type Result_Buildbucket_ struct {
	Buildbucket *Result_Buildbucket `protobuf:"bytes,5,opt,name=buildbucket,proto3,oneof"`
}

type Result_Status

type Result_Status int32
const (
	// RESULT_STATUS_UNSPECIFIED is never used.
	Result_RESULT_STATUS_UNSPECIFIED Result_Status = 0
	// UNKNOWN means Tryjob didn't reach a conclusion.
	//
	// *must* be used only if Tryjob.Status is TRIGGERED and the Tryjob
	// hasn't made a decision yet.
	Result_UNKNOWN Result_Status = 1
	// SUCCEEDED means that Run's CLs are considered OK by this Tryjob.
	Result_SUCCEEDED Result_Status = 2
	// FAILED_PERMANENTLY means that Run's CLs are most likely not good.
	Result_FAILED_PERMANENTLY Result_Status = 3
	// FAILED_TRANSIENTLY means that Run's CLs are most likely not to blame
	// for the failure.
	// TODO(crbug/1227363): consider removing transiency aspect if possible.
	Result_FAILED_TRANSIENTLY Result_Status = 4
	// TIMEOUT means the Tryjob ran over some deadline and did not make a
	// decision about this Run's CLs.
	Result_TIMEOUT Result_Status = 5
)

func (Result_Status) Descriptor

func (Result_Status) Enum

func (x Result_Status) Enum() *Result_Status

func (Result_Status) EnumDescriptor deprecated

func (Result_Status) EnumDescriptor() ([]byte, []int)

Deprecated: Use Result_Status.Descriptor instead.

func (Result_Status) Number

func (Result_Status) String

func (x Result_Status) String() string

func (Result_Status) Type

type Status

type Status int32

Status is a high level status of a Tryjob from CV implementation PoV.

const (
	// STATUS_UNSPECIFIED is never used.
	Status_STATUS_UNSPECIFIED Status = 0
	// PENDING means Tryjob is being triggered by CV, i.e. it has not yet been
	// triggered, but CV will try to trigger it.
	//
	// *may* not yet have an external ID.
	// *must* have no Result.
	Status_PENDING Status = 1
	// TRIGGERED means Tryjob was triggered.
	//
	// *must* have an External ID.
	// *may* have been triggered not by CV, but by another user, service, etc.
	// *may* have a Result, which *may* still change.
	Status_TRIGGERED Status = 2
	// ENDED means the Tryjob completed. Final status.
	//
	// *must* have an External ID.
	// *must* have a Result, whose Status is not UNKNOWN.
	Status_ENDED Status = 3
	// CANCELLED means Tryjob was cancelled by CV. Final status.
	//
	// *must* have an External ID.
	// *must* have no Result.
	Status_CANCELLED Status = 4
	// UNTRIGGERED means Tryjob was never triggered. Final state.
	//
	// *must* have no External ID.
	// *must* have no Result.
	//
	// This status is an implementation detail of CV, used for Tryjobs which
	// weren't actually triggered.
	Status_UNTRIGGERED Status = 5
)

func (Status) Descriptor

func (Status) Descriptor() protoreflect.EnumDescriptor

func (Status) Enum

func (x Status) Enum() *Status

func (Status) EnumDescriptor deprecated

func (Status) EnumDescriptor() ([]byte, []int)

Deprecated: Use Status.Descriptor instead.

func (Status) Number

func (x Status) Number() protoreflect.EnumNumber

func (Status) String

func (x Status) String() string

func (Status) Type

func (Status) Type() protoreflect.EnumType

type TaskBindings

type TaskBindings struct {
	CancelStale tq.TaskClassRef
	Update      tq.TaskClassRef
	// contains filtered or unexported fields
}

TaskBindings allow us to assign handlers separately from task registration.

type Tryjob

type Tryjob struct {

	// ID is the Tryjob ID, autogenerated by the Datastore.
	ID common.TryjobID `gae:"$id"`
	// ExternalID is a Tryjob ID in external system, e.g. Buildbucket.
	//
	// There can be at most one Tryjob with a given ExternalID.
	ExternalID ExternalID `gae:",noindex"` // Indexed in tryjobMap entities.
	// EVersion is the entity version.
	//
	// It increments by one upon every successful modification.
	EVersion int64 `gae:",noindex"`
	// EntityCreateTime is the timestamp when this entity was created.
	//
	// NOTE: This is not the backend's tryjob creation time, which is stored in
	// .Result.CreateTime.
	EntityCreateTime time.Time `gae:",noindex"`
	// UpdateTime is the timestamp when this entity was last updated.
	//
	// NOTE: This is not the backend's tryjob update time, which is stored in
	// .Result.UpdateTime.
	EntityUpdateTime time.Time `gae:",noindex"`

	// RetentionKey is for data retention purpose.
	//
	// It is indexed and tries to avoid hot areas in the index. The format is
	// `{shard_key}/{unix_time_of_EntityUpdateTime}`. Shard key is the last 2
	// digit of ID with left padded zero. Unix timestamp is a 10 digit integer
	// with left padded zero if necessary.
	RetentionKey string

	// ReuseKey is used to quickly decide if this Tryjob can be reused by a run.
	//
	// Note that, even if reuse is allowed here, reuse is still subjected to
	// other restrictions (for example, Tryjob is not fresh enough for the run).
	//
	// reusekey is currently computed in the following way:
	//  base64(
	//    sha256(
	//      '\0'.join(sorted('%d/%d' % (cl.ID, cl.minEquiPatchSet) for cl in cls))
	//    )
	//  )
	//
	// Indexed
	ReuseKey string

	// Definition of the tryjob.
	//
	// Immutable.
	Definition *Definition

	// Status of the Tryjob.
	Status Status `gae:",noindex"`

	// Result of the Tryjob.
	//
	// Must be set if Status is ENDED.
	// May be set if Status is TRIGGERED.
	//
	// It's used by the Run Manager.
	Result *Result

	// LaunchedBy is the Run that launches this Tryjob.
	//
	// May be unset if the Tryjob was not launched by CV (e.g. through Gerrit
	// UI), in which case ReusedBy should have at least one Run.
	LaunchedBy common.RunID `gae:",noindex"`

	// ReusedBy are the Runs that are interested in the result of this Tryjob.
	ReusedBy common.RunIDs `gae:",noindex"`

	// CLPatchsets is an array of CLPatchset that each identify a specific
	// patchset in a specific CL.
	//
	// The values are to be computed by MakeCLPatchset().
	// See its documentation for details.
	//
	// Sorted and Indexed.
	CLPatchsets CLPatchsets

	// UntriggeredReason is the reason why LUCI CV doesn't trigger the Tryjob.
	UntriggeredReason string `gae:",noindex"`
	// contains filtered or unexported fields
}

Tryjob is an entity tracking CV Tryjobs.

func LoadTryjobsByIDs

func LoadTryjobsByIDs(ctx context.Context, ids []common.TryjobID) ([]*Tryjob, error)

LoadTryjobsByIDs loads the tryjobs with the given ids from datastore.

func ResolveToTryjobs

func ResolveToTryjobs(ctx context.Context, eids ...ExternalID) ([]*Tryjob, error)

ResolveToTryjobs resolves ExternalIDs to Tryjob entities.

If the external id can't be found inside CV, its corresponding Tryjob entity will be nil.

func (*Tryjob) AllWatchingRuns

func (t *Tryjob) AllWatchingRuns() common.RunIDs

AllWatchingRuns returns the IDs for the Runs that care about this tryjob.

This includes the triggerer (if the tryjob was triggered by CV) and all the Runs reusing this tryjob (if any).

func (*Tryjob) IsEnded

func (t *Tryjob) IsEnded() bool

IsEnded checks whether the Tryjob's status is final (can not change again).

func (*Tryjob) LUCIProject

func (t *Tryjob) LUCIProject() string

LUCIProject() returns the project in the context of which the Tryjob is updated, and which is thus allowed to "read" the Tryjob.

In the case of Buildbucket, this may be different from the LUCI project to which the corresponding build belongs. For example, consider a "v8" project with configuration saying to trigger "chromium/try/linux_rel" builder: when CV triggers a new tryjob T for a "v8" Run, T.LUCIProject() will be "v8" even though the build itself will be in the "chromium/try" Buildbucket bucket.

In general, a Run of project P must not re-use tryjob T if T.LUCIProject() != P, until it has been verified with the tryjob backend that P has access to T.

func (*Tryjob) Load

func (tj *Tryjob) Load(p datastore.PropertyMap) error

Load implements datastore.PropertyLoadSaver.

func (*Tryjob) Save

func (tj *Tryjob) Save(withMeta bool) (datastore.PropertyMap, error)

Save implements datastore.PropertyLoadSaver.

Makes sure the EntityUpdateTime and RetentionKey are always updated.

type TryjobUpdatedEvent

type TryjobUpdatedEvent struct {
	TryjobId int64 `protobuf:"varint,1,opt,name=tryjob_id,json=tryjobId,proto3" json:"tryjob_id,omitempty"`
	// contains filtered or unexported fields
}

TryjobUpdatedEvent describes which Tryjob entity is updated.

func (*TryjobUpdatedEvent) Descriptor deprecated

func (*TryjobUpdatedEvent) Descriptor() ([]byte, []int)

Deprecated: Use TryjobUpdatedEvent.ProtoReflect.Descriptor instead.

func (*TryjobUpdatedEvent) GetTryjobId

func (x *TryjobUpdatedEvent) GetTryjobId() int64

func (*TryjobUpdatedEvent) ProtoMessage

func (*TryjobUpdatedEvent) ProtoMessage()

func (*TryjobUpdatedEvent) ProtoReflect

func (x *TryjobUpdatedEvent) ProtoReflect() protoreflect.Message

func (*TryjobUpdatedEvent) Reset

func (x *TryjobUpdatedEvent) Reset()

func (*TryjobUpdatedEvent) String

func (x *TryjobUpdatedEvent) String() string

func (*TryjobUpdatedEvent) Validate

func (m *TryjobUpdatedEvent) Validate() error

Validate checks the field values on TryjobUpdatedEvent with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*TryjobUpdatedEvent) ValidateAll

func (m *TryjobUpdatedEvent) ValidateAll() error

ValidateAll checks the field values on TryjobUpdatedEvent with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in TryjobUpdatedEventMultiError, or nil if none found.

type TryjobUpdatedEventMultiError

type TryjobUpdatedEventMultiError []error

TryjobUpdatedEventMultiError is an error wrapping multiple validation errors returned by TryjobUpdatedEvent.ValidateAll() if the designated constraints aren't met.

func (TryjobUpdatedEventMultiError) AllErrors

func (m TryjobUpdatedEventMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (TryjobUpdatedEventMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type TryjobUpdatedEventValidationError

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

TryjobUpdatedEventValidationError is the validation error returned by TryjobUpdatedEvent.Validate if the designated constraints aren't met.

func (TryjobUpdatedEventValidationError) Cause

Cause function returns cause value.

func (TryjobUpdatedEventValidationError) Error

Error satisfies the builtin error interface

func (TryjobUpdatedEventValidationError) ErrorName

ErrorName returns error name.

func (TryjobUpdatedEventValidationError) Field

Field function returns field value.

func (TryjobUpdatedEventValidationError) Key

Key function returns key value.

func (TryjobUpdatedEventValidationError) Reason

Reason function returns reason value.

type TryjobUpdatedEvents

type TryjobUpdatedEvents struct {
	Events []*TryjobUpdatedEvent `protobuf:"bytes,1,rep,name=events,proto3" json:"events,omitempty"`
	// contains filtered or unexported fields
}

TryjobUpdatedEvents is a batch of TryjobUpdatedEvent.

func (*TryjobUpdatedEvents) Descriptor deprecated

func (*TryjobUpdatedEvents) Descriptor() ([]byte, []int)

Deprecated: Use TryjobUpdatedEvents.ProtoReflect.Descriptor instead.

func (*TryjobUpdatedEvents) GetEvents

func (x *TryjobUpdatedEvents) GetEvents() []*TryjobUpdatedEvent

func (*TryjobUpdatedEvents) ProtoMessage

func (*TryjobUpdatedEvents) ProtoMessage()

func (*TryjobUpdatedEvents) ProtoReflect

func (x *TryjobUpdatedEvents) ProtoReflect() protoreflect.Message

func (*TryjobUpdatedEvents) Reset

func (x *TryjobUpdatedEvents) Reset()

func (*TryjobUpdatedEvents) String

func (x *TryjobUpdatedEvents) String() string

func (*TryjobUpdatedEvents) Validate

func (m *TryjobUpdatedEvents) Validate() error

Validate checks the field values on TryjobUpdatedEvents with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*TryjobUpdatedEvents) ValidateAll

func (m *TryjobUpdatedEvents) ValidateAll() error

ValidateAll checks the field values on TryjobUpdatedEvents with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in TryjobUpdatedEventsMultiError, or nil if none found.

type TryjobUpdatedEventsMultiError

type TryjobUpdatedEventsMultiError []error

TryjobUpdatedEventsMultiError is an error wrapping multiple validation errors returned by TryjobUpdatedEvents.ValidateAll() if the designated constraints aren't met.

func (TryjobUpdatedEventsMultiError) AllErrors

func (m TryjobUpdatedEventsMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (TryjobUpdatedEventsMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type TryjobUpdatedEventsValidationError

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

TryjobUpdatedEventsValidationError is the validation error returned by TryjobUpdatedEvents.Validate if the designated constraints aren't met.

func (TryjobUpdatedEventsValidationError) Cause

Cause function returns cause value.

func (TryjobUpdatedEventsValidationError) Error

Error satisfies the builtin error interface

func (TryjobUpdatedEventsValidationError) ErrorName

ErrorName returns error name.

func (TryjobUpdatedEventsValidationError) Field

Field function returns field value.

func (TryjobUpdatedEventsValidationError) Key

Key function returns key value.

func (TryjobUpdatedEventsValidationError) Reason

Reason function returns reason value.

type UpdateTryjobTask

type UpdateTryjobTask struct {

	// id is the Tryjob entity datastore ID. Internal to CV.
	Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// external_id is the ID that identifies the Tryjob in the backend.
	// e.g. in the case of Buildbucket, it's the build ID.
	ExternalId string `protobuf:"bytes,2,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
	// contains filtered or unexported fields
}

UpdateTryjobTask checks the status of a Tryjob and updates and saves the Datastore entity, and notifies Runs which care about this Tryjob.

It does NOT involve deciding next actions to take based on changes in Tryjob state; e.g. it doesn't involve triggering retries or ending the Run; the Tryjob Executor is responsible for this, see also ExecuteTryjobsPayload.

Queue: "tryjob-update".

func (*UpdateTryjobTask) Descriptor deprecated

func (*UpdateTryjobTask) Descriptor() ([]byte, []int)

Deprecated: Use UpdateTryjobTask.ProtoReflect.Descriptor instead.

func (*UpdateTryjobTask) GetExternalId

func (x *UpdateTryjobTask) GetExternalId() string

func (*UpdateTryjobTask) GetId

func (x *UpdateTryjobTask) GetId() int64

func (*UpdateTryjobTask) ProtoMessage

func (*UpdateTryjobTask) ProtoMessage()

func (*UpdateTryjobTask) ProtoReflect

func (x *UpdateTryjobTask) ProtoReflect() protoreflect.Message

func (*UpdateTryjobTask) Reset

func (x *UpdateTryjobTask) Reset()

func (*UpdateTryjobTask) String

func (x *UpdateTryjobTask) String() string

func (*UpdateTryjobTask) Validate

func (m *UpdateTryjobTask) Validate() error

Validate checks the field values on UpdateTryjobTask with the rules defined in the proto definition for this message. If any rules are violated, the first error encountered is returned, or nil if there are no violations.

func (*UpdateTryjobTask) ValidateAll

func (m *UpdateTryjobTask) ValidateAll() error

ValidateAll checks the field values on UpdateTryjobTask with the rules defined in the proto definition for this message. If any rules are violated, the result is a list of violation errors wrapped in UpdateTryjobTaskMultiError, or nil if none found.

type UpdateTryjobTaskMultiError

type UpdateTryjobTaskMultiError []error

UpdateTryjobTaskMultiError is an error wrapping multiple validation errors returned by UpdateTryjobTask.ValidateAll() if the designated constraints aren't met.

func (UpdateTryjobTaskMultiError) AllErrors

func (m UpdateTryjobTaskMultiError) AllErrors() []error

AllErrors returns a list of validation violation errors.

func (UpdateTryjobTaskMultiError) Error

Error returns a concatenation of all the error messages it wraps.

type UpdateTryjobTaskValidationError

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

UpdateTryjobTaskValidationError is the validation error returned by UpdateTryjobTask.Validate if the designated constraints aren't met.

func (UpdateTryjobTaskValidationError) Cause

Cause function returns cause value.

func (UpdateTryjobTaskValidationError) Error

Error satisfies the builtin error interface

func (UpdateTryjobTaskValidationError) ErrorName

ErrorName returns error name.

func (UpdateTryjobTaskValidationError) Field

Field function returns field value.

func (UpdateTryjobTaskValidationError) Key

Key function returns key value.

func (UpdateTryjobTaskValidationError) Reason

Reason function returns reason value.

Directories

Path Synopsis
Package execute implements logic to execute tryjob requirement for Runs.
Package execute implements logic to execute tryjob requirement for Runs.
Package requirement computes Tryjob Requirements and provides various utility functions related to Tryjob Requirements.
Package requirement computes Tryjob Requirements and provides various utility functions related to Tryjob Requirements.
Package tjcancel contains code in charge of cancelling stale tryjobs.
Package tjcancel contains code in charge of cancelling stale tryjobs.
Package tjupdate contains Updater, which handles an UpdateTryjobTask.
Package tjupdate contains Updater, which handles an UpdateTryjobTask.

Jump to

Keyboard shortcuts

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