Back to godoc.org

Package config

v0.0.0-...-1557bcf
Latest Go to latest

The latest major version is .

Published: Aug 13, 2020 | License: Apache-2.0 | Module: github.com/luci/luci-go

Overview

Package config contains the CQ config schema.

Index

Variables

var (
	Toggle_name = map[int32]string{
		0: "UNSET",
		1: "YES",
		2: "NO",
	}
	Toggle_value = map[string]int32{
		"UNSET": 0,
		"YES":   1,
		"NO":    2,
	}
)

Enum value maps for Toggle.

var (
	CommentLevel_name = map[int32]string{
		0: "COMMENT_LEVEL_UNSET",
		1: "COMMENT_LEVEL_FULL",
		2: "COMMENT_LEVEL_RESTRICTED",
	}
	CommentLevel_value = map[string]int32{
		"COMMENT_LEVEL_UNSET":      0,
		"COMMENT_LEVEL_FULL":       1,
		"COMMENT_LEVEL_RESTRICTED": 2,
	}
)

Enum value maps for CommentLevel.

var (
	Verifiers_GerritCQAbility_CQAction_name = map[int32]string{
		0: "UNSET",
		1: "DRY_RUN",
		2: "COMMIT",
	}
	Verifiers_GerritCQAbility_CQAction_value = map[string]int32{
		"UNSET":   0,
		"DRY_RUN": 1,
		"COMMIT":  2,
	}
)

Enum value maps for Verifiers_GerritCQAbility_CQAction.

var File_go_chromium_org_luci_cv_api_config_v2_cq_proto protoreflect.FileDescriptor

type CombineCLs

type CombineCLs struct {

	// Roughly, how long CQ waits for CQ to be triggered on each of the related
	// CLs.
	//
	// Must be greater than 10s.
	// 30s is recommended.
	//
	// Technically precise definition is time to wait since the latest CL among
	// related ones receives CQ+1/2 vote before starting actual attempt.
	//
	// For example, during this delay, a CQ vote may be added on another CL
	// which depends on previously CQ-ed CL in this not-yet-started attempt. Then,
	// CQ would extend the attempt with additional CL and reset the waiting
	// counter.
	//
	// Additional implication is that a standalone CL w/o any other relations to
	// other CLs will need to wait this much time before CQ would start processing
	// it (i.e., before it triggers first tryjob).
	StabilizationDelay *duration.Duration `protobuf:"bytes,1,opt,name=stabilization_delay,json=stabilizationDelay,proto3" json:"stabilization_delay,omitempty"`
	// contains filtered or unexported fields
}

CombineCLs defines how CQ works with >1 CL per attempt.

Dependencies between CLs are either implicit via Git child->parent relationship (e.g. stacked CLs in Gerrit) or explicit via "CQ-Depend:" footer in CL description (next to Change-Id:). "CQ-Depend" may span across repositories and even Gerrit hosts. For example, a CL on https://pdfium-review.googlesource.com may declare dependency on https://chromium-review.googlesource.com/1111111 by adding this footer:

CQ-Depend: chromium:1111111

The "chromium" part means that 1111111 is on the chromium-review.googlesource.com host. It can be omitted if dependency is on the same host as the CL depending on it.

CQ-Depend alone or with Git dependencies may form cycles, which is useful to require CQ to test & submit all CLs in a cycle at the same time, never alone.

A user must vote on CQ label on **each CL** individually. Since it can't be instantaneous, `stabilization_delay` controls how long CQ waits for all CQ+1/2 votes before computing maximal expanded set of CLs and starting the attempt.

For any CL with CQ+1/2 vote, each of its dependency must have the same CQ vote and be configured for CQ **in the same config group**, else CQ would abort the attempt with appropriate error message.

Each tryjob CQ triggers via Buildbucket will be associated with each CL of the attempt via `gerrit_changes` parameter of Buildbucket. These changes are then available to a build as it is being executed. If ran via recipes, the `ordered_gerrit_changes` property of https://chromium.googlesource.com/infra/luci/recipes-py/+/HEAD/README.recipes.md#class-cqapi_recipeapi can be used to CLs in the right order.

WARNING: When submitting CLs, CQ can not do so atomically (all submitted or none submitted) because Gerrit doesn't support this even for the same repo & target_ref.

func (*CombineCLs) Descriptor

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

Deprecated: Use CombineCLs.ProtoReflect.Descriptor instead.

func (*CombineCLs) GetStabilizationDelay

func (x *CombineCLs) GetStabilizationDelay() *duration.Duration

func (*CombineCLs) ProtoMessage

func (*CombineCLs) ProtoMessage()

func (*CombineCLs) ProtoReflect

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

func (*CombineCLs) Reset

func (x *CombineCLs) Reset()

func (*CombineCLs) String

func (x *CombineCLs) String() string

type CommentLevel

type CommentLevel int32

Determines how visible the results of a build for this builder are in Gerrit comments.

This doesn't affect the buildbucket plugin (green/red chips).

const (
	// Currently default to full visibility.
	CommentLevel_COMMENT_LEVEL_UNSET CommentLevel = 0
	// The CQ reports the summary markdown and a link to the buildbucket build id
	// in Milo with the builder name in the URL in a Gerrit comment.
	CommentLevel_COMMENT_LEVEL_FULL CommentLevel = 1
	// The CQ reports a generic "Build failed: https://ci.chromium.org/b/1234"
	// with no summary markdown.
	CommentLevel_COMMENT_LEVEL_RESTRICTED CommentLevel = 2
)

func (CommentLevel) Descriptor

func (CommentLevel) Descriptor() protoreflect.EnumDescriptor

func (CommentLevel) Enum

func (x CommentLevel) Enum() *CommentLevel

func (CommentLevel) EnumDescriptor

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

Deprecated: Use CommentLevel.Descriptor instead.

func (CommentLevel) Number

func (x CommentLevel) Number() protoreflect.EnumNumber

func (CommentLevel) String

func (x CommentLevel) String() string

func (CommentLevel) Type

func (CommentLevel) Type() protoreflect.EnumType

type Config

type Config struct {
	DrainingStartTime string `protobuf:"bytes,1,opt,name=draining_start_time,json=drainingStartTime,proto3" json:"draining_start_time,omitempty"`

	CqStatusHost string `protobuf:"bytes,2,opt,name=cq_status_host,json=cqStatusHost,proto3" json:"cq_status_host,omitempty"`

	SubmitOptions *SubmitOptions `protobuf:"bytes,3,opt,name=submit_options,json=submitOptions,proto3" json:"submit_options,omitempty"`

	ConfigGroups []*ConfigGroup `protobuf:"bytes,4,rep,name=config_groups,json=configGroups,proto3" json:"config_groups,omitempty"`

	ProjectScopedAccount Toggle "" /* 146 byte string literal not displayed */

}

This message describes a CQ configuration.

The config file commit-queue.cfg should be stored in the config directory of your project, alongside cr-buildbucket.cfg.

func (*Config) Descriptor

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

Deprecated: Use Config.ProtoReflect.Descriptor instead.

func (*Config) GetConfigGroups

func (x *Config) GetConfigGroups() []*ConfigGroup

func (*Config) GetCqStatusHost

func (x *Config) GetCqStatusHost() string

Deprecated: Do not use.

func (*Config) GetDrainingStartTime

func (x *Config) GetDrainingStartTime() string

func (*Config) GetProjectScopedAccount

func (x *Config) GetProjectScopedAccount() Toggle

Deprecated: Do not use.

func (*Config) GetSubmitOptions

func (x *Config) GetSubmitOptions() *SubmitOptions

func (*Config) ProtoMessage

func (*Config) ProtoMessage()

func (*Config) ProtoReflect

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

func (*Config) Reset

func (x *Config) Reset()

func (*Config) String

func (x *Config) String() string

type ConfigGroup

type ConfigGroup struct {

	// The human- and machine-readable name (unique within this project) of this
	// config group. This is used in messages posted to users and in monitoring
	// data. Must match regex "^[a-zA-Z][a-zA-Z0-9_-]*$".
	Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"`
	// At least 1 Gerrit instance with repositories to work with is required.
	Gerrit []*ConfigGroup_Gerrit `protobuf:"bytes,1,rep,name=gerrit,proto3" json:"gerrit,omitempty"`
	// Optional. If specified, CQ will consider sets of dependent CLs to test and
	// submit at the same time.
	//
	// Typical use-case is testing & submitting changes to multiple repos at the
	// same time, in which case all such repos must be declared up-front in
	// `Gerrit` part of this config_group.
	//
	// Not allowed to be used together with
	// submit_options.allow_submit_with_open_deps=true.
	CombineCls *CombineCLs `protobuf:"bytes,4,opt,name=combine_cls,json=combineCls,proto3" json:"combine_cls,omitempty"`
	// Defines how to verify a CL before submitting it. Required.
	Verifiers *Verifiers `protobuf:"bytes,2,opt,name=verifiers,proto3" json:"verifiers,omitempty"`
	// EXPERIMENTAL! TODO(tandrii, crbug/966115): add better doc or remove.
	//
	// If set, this ConfigGroup will be used if no other ConfigGroup matches.
	//
	// At most 1 config_group can be YES.
	//
	// Example use is to define specific config_group for refs/heads/master,
	// and fallback one for refs/heads/* which will pick up all CLs on
	// non-master branches.
	Fallback Toggle `protobuf:"varint,5,opt,name=fallback,proto3,enum=cq.config.Toggle" json:"fallback,omitempty"`
	// contains filtered or unexported fields
}

ConfigGroup allows one to share single verifiers config across a set of Gerrit repositories, which may be in different Gerrit installations.

func (*ConfigGroup) Descriptor

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

Deprecated: Use ConfigGroup.ProtoReflect.Descriptor instead.

func (*ConfigGroup) GetCombineCls

func (x *ConfigGroup) GetCombineCls() *CombineCLs

func (*ConfigGroup) GetFallback

func (x *ConfigGroup) GetFallback() Toggle

func (*ConfigGroup) GetGerrit

func (x *ConfigGroup) GetGerrit() []*ConfigGroup_Gerrit

func (*ConfigGroup) GetName

func (x *ConfigGroup) GetName() string

func (*ConfigGroup) GetVerifiers

func (x *ConfigGroup) GetVerifiers() *Verifiers

func (*ConfigGroup) ProtoMessage

func (*ConfigGroup) ProtoMessage()

func (*ConfigGroup) ProtoReflect

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

func (*ConfigGroup) Reset

func (x *ConfigGroup) Reset()

func (*ConfigGroup) String

func (x *ConfigGroup) String() string

type ConfigGroup_Gerrit

type ConfigGroup_Gerrit struct {

	// Gerrit URL, e.g., https://chromium-review.googlesource.com.
	// No trailing slashes allowed.
	Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	// Gerrit projects of this Gerrit instance to work with.
	//
	// At least 1 required.
	Projects []*ConfigGroup_Gerrit_Project `protobuf:"bytes,2,rep,name=projects,proto3" json:"projects,omitempty"`
	// contains filtered or unexported fields
}

Enumerates repositories on a Gerrit instance for which CQ should work.

func (*ConfigGroup_Gerrit) Descriptor

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

Deprecated: Use ConfigGroup_Gerrit.ProtoReflect.Descriptor instead.

func (*ConfigGroup_Gerrit) GetProjects

func (x *ConfigGroup_Gerrit) GetProjects() []*ConfigGroup_Gerrit_Project

func (*ConfigGroup_Gerrit) GetUrl

func (x *ConfigGroup_Gerrit) GetUrl() string

func (*ConfigGroup_Gerrit) ProtoMessage

func (*ConfigGroup_Gerrit) ProtoMessage()

func (*ConfigGroup_Gerrit) ProtoReflect

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

func (*ConfigGroup_Gerrit) Reset

func (x *ConfigGroup_Gerrit) Reset()

func (*ConfigGroup_Gerrit) String

func (x *ConfigGroup_Gerrit) String() string

type ConfigGroup_Gerrit_Project

type ConfigGroup_Gerrit_Project struct {

	// Repository name inside Gerrit host. Required.
	//
	// No leading or trailing slashes allowed, no '.git' at the end.
	// 'a/' prefix is also not allowed (it's used on *.googlesource.com for
	// forcing authentication).
	//
	// Examples on https://chromium-review.googlesource.com:
	//   catapult
	//   chromium/src
	//   chromium/tools/depot_tools
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Limit CLs in this repo to only these refs. Required.
	//
	// If not specified, defaults to "refs/heads/master".
	//
	// NOTE: your Gerrit admin must configure Gerrit ACLs such that CQ has
	// read access to these refs, otherwise your users will be waiting for CQ
	// to act on their CLs forever.
	//
	// Regular expression is validated by https://github.com/google/re2 library.
	//
	// NOTE: Git globs aren't supported. Convert them to a regular expression,
	// e.g., Git glob "refs/heads/*" should be "refs/heads/[^/]+".
	// However, users typically expect "refs/heads/.+", since expectation is
	// that every typical Git branch to be CQ-able, including
	// "refs/heads/experimental/foobar".
	RefRegexp []string `protobuf:"bytes,2,rep,name=ref_regexp,json=refRegexp,proto3" json:"ref_regexp,omitempty"`
	// contains filtered or unexported fields
}

func (*ConfigGroup_Gerrit_Project) Descriptor

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

Deprecated: Use ConfigGroup_Gerrit_Project.ProtoReflect.Descriptor instead.

func (*ConfigGroup_Gerrit_Project) GetName

func (x *ConfigGroup_Gerrit_Project) GetName() string

func (*ConfigGroup_Gerrit_Project) GetRefRegexp

func (x *ConfigGroup_Gerrit_Project) GetRefRegexp() []string

func (*ConfigGroup_Gerrit_Project) ProtoMessage

func (*ConfigGroup_Gerrit_Project) ProtoMessage()

func (*ConfigGroup_Gerrit_Project) ProtoReflect

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

func (*ConfigGroup_Gerrit_Project) Reset

func (x *ConfigGroup_Gerrit_Project) Reset()

func (*ConfigGroup_Gerrit_Project) String

func (x *ConfigGroup_Gerrit_Project) String() string

type SubmitOptions

type SubmitOptions struct {

	// Optional. Maximum number of successful CQ attempts completed by submitting
	// corresponding Gerrit CL(s) before waiting burst_delay.
	//
	// This feature today applies to all attempts processed by this CQ, across all
	// config_groups.
	//
	// Must be >0 to take effect. Requires burst_delay to be set, too.
	MaxBurst int32 `protobuf:"varint,1,opt,name=max_burst,json=maxBurst,proto3" json:"max_burst,omitempty"`
	// Optional. Delay between bursts of submissions of CQ attempts.
	// See max_burst for more info.
	//
	// Must be >0 to take effect. Requires max_burst to be set, too.
	BurstDelay *duration.Duration `protobuf:"bytes,2,opt,name=burst_delay,json=burstDelay,proto3" json:"burst_delay,omitempty"`
	// contains filtered or unexported fields
}

SubmitOptions control how CQ submits CLs.

func (*SubmitOptions) Descriptor

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

Deprecated: Use SubmitOptions.ProtoReflect.Descriptor instead.

func (*SubmitOptions) GetBurstDelay

func (x *SubmitOptions) GetBurstDelay() *duration.Duration

func (*SubmitOptions) GetMaxBurst

func (x *SubmitOptions) GetMaxBurst() int32

func (*SubmitOptions) ProtoMessage

func (*SubmitOptions) ProtoMessage()

func (*SubmitOptions) ProtoReflect

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

func (*SubmitOptions) Reset

func (x *SubmitOptions) Reset()

func (*SubmitOptions) String

func (x *SubmitOptions) String() string

type Toggle

type Toggle int32

A boolean with an "unset" default value.

const (
	Toggle_UNSET Toggle = 0
	Toggle_YES   Toggle = 1
	Toggle_NO    Toggle = 2
)

func (Toggle) Descriptor

func (Toggle) Descriptor() protoreflect.EnumDescriptor

func (Toggle) Enum

func (x Toggle) Enum() *Toggle

func (Toggle) EnumDescriptor

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

Deprecated: Use Toggle.Descriptor instead.

func (Toggle) Number

func (x Toggle) Number() protoreflect.EnumNumber

func (Toggle) String

func (x Toggle) String() string

func (Toggle) Type

func (Toggle) Type() protoreflect.EnumType

type Verifiers

type Verifiers struct {

	// Required. GerritCQAbility ensures that a user who triggered
	// this CQ attempt actually has rights to do so based on 3 factors:
	//  * membership of the user in committers & dryrunners group,
	//  * the state of CL/patchset on which CQ is triggered,
	//  * relationship of the user to the CL.
	GerritCqAbility *Verifiers_GerritCQAbility `protobuf:"bytes,1,opt,name=gerrit_cq_ability,json=gerritCqAbility,proto3" json:"gerrit_cq_ability,omitempty"`
	// This verifier is used to check tree status before committing a CL. If the
	// tree is closed, then the verifier will wait until it is reopened.
	TreeStatus *Verifiers_TreeStatus `protobuf:"bytes,2,opt,name=tree_status,json=treeStatus,proto3" json:"tree_status,omitempty"`
	// This verifier triggers a set of builds through Buildbucket.
	//
	// CQ automatically retries failed tryjobs and only allows CL to land if each
	// builder has succeeded in the latest retry.
	// If a given tryjob result is too old (>1 day) it is ignored.
	//
	// Typically, builds from Buildbucket are executed on LUCI stack, however, CQ
	// is agnostic to how and where builds are executed.
	Tryjob *Verifiers_Tryjob `protobuf:"bytes,3,opt,name=tryjob,proto3" json:"tryjob,omitempty"`
	// CQLinter is for internal CQ use only. DO NOT USE IN YOUR cq.cfg.
	Cqlinter *Verifiers_CQLinter `protobuf:"bytes,4,opt,name=cqlinter,proto3" json:"cqlinter,omitempty"`
	// Fake is for internal CQ use only. DO NOT USE IN YOUR cq.cfg.
	Fake *Verifiers_Fake `protobuf:"bytes,5,opt,name=fake,proto3" json:"fake,omitempty"`
	// contains filtered or unexported fields
}

Verifiers are various types of checks that a Commit Queue performs on a CL. All verifiers must pass in order for a CL to be submitted. Configuration file describes types of verifiers that should be applied to each CL and their parameters.

func (*Verifiers) Descriptor

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

Deprecated: Use Verifiers.ProtoReflect.Descriptor instead.

func (*Verifiers) GetCqlinter

func (x *Verifiers) GetCqlinter() *Verifiers_CQLinter

func (*Verifiers) GetFake

func (x *Verifiers) GetFake() *Verifiers_Fake

func (*Verifiers) GetGerritCqAbility

func (x *Verifiers) GetGerritCqAbility() *Verifiers_GerritCQAbility

func (*Verifiers) GetTreeStatus

func (x *Verifiers) GetTreeStatus() *Verifiers_TreeStatus

func (*Verifiers) GetTryjob

func (x *Verifiers) GetTryjob() *Verifiers_Tryjob

func (*Verifiers) ProtoMessage

func (*Verifiers) ProtoMessage()

func (*Verifiers) ProtoReflect

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

func (*Verifiers) Reset

func (x *Verifiers) Reset()

func (*Verifiers) String

func (x *Verifiers) String() string

type Verifiers_CQLinter

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

CQLinter is for internal use in CQ.

func (*Verifiers_CQLinter) Descriptor

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

Deprecated: Use Verifiers_CQLinter.ProtoReflect.Descriptor instead.

func (*Verifiers_CQLinter) ProtoMessage

func (*Verifiers_CQLinter) ProtoMessage()

func (*Verifiers_CQLinter) ProtoReflect

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

func (*Verifiers_CQLinter) Reset

func (x *Verifiers_CQLinter) Reset()

func (*Verifiers_CQLinter) String

func (x *Verifiers_CQLinter) String() string

type Verifiers_Fake

type Verifiers_Fake struct {
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	EventualState string `protobuf:"bytes,2,opt,name=eventual_state,json=eventualState,proto3" json:"eventual_state,omitempty"`
	Delay         int32  `protobuf:"varint,3,opt,name=delay,proto3" json:"delay,omitempty"`
	// contains filtered or unexported fields
}

Fake is for internal use in CQ.

func (*Verifiers_Fake) Descriptor

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

Deprecated: Use Verifiers_Fake.ProtoReflect.Descriptor instead.

func (*Verifiers_Fake) GetDelay

func (x *Verifiers_Fake) GetDelay() int32

func (*Verifiers_Fake) GetEventualState

func (x *Verifiers_Fake) GetEventualState() string

func (*Verifiers_Fake) GetName

func (x *Verifiers_Fake) GetName() string

func (*Verifiers_Fake) ProtoMessage

func (*Verifiers_Fake) ProtoMessage()

func (*Verifiers_Fake) ProtoReflect

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

func (*Verifiers_Fake) Reset

func (x *Verifiers_Fake) Reset()

func (*Verifiers_Fake) String

func (x *Verifiers_Fake) String() string

type Verifiers_GerritCQAbility

type Verifiers_GerritCQAbility struct {
	CommitterList []string `protobuf:"bytes,1,rep,name=committer_list,json=committerList,proto3" json:"committer_list,omitempty"`

	DryRunAccessList []string `protobuf:"bytes,2,rep,name=dry_run_access_list,json=dryRunAccessList,proto3" json:"dry_run_access_list,omitempty"`

	AllowSubmitWithOpenDeps bool "" /* 137 byte string literal not displayed */

	AllowOwnerIfSubmittable Verifiers_GerritCQAbility_CQAction "" /* 185 byte string literal not displayed */

}

func (*Verifiers_GerritCQAbility) Descriptor

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

Deprecated: Use Verifiers_GerritCQAbility.ProtoReflect.Descriptor instead.

func (*Verifiers_GerritCQAbility) GetAllowOwnerIfSubmittable

func (x *Verifiers_GerritCQAbility) GetAllowOwnerIfSubmittable() Verifiers_GerritCQAbility_CQAction

func (*Verifiers_GerritCQAbility) GetAllowSubmitWithOpenDeps

func (x *Verifiers_GerritCQAbility) GetAllowSubmitWithOpenDeps() bool

func (*Verifiers_GerritCQAbility) GetCommitterList

func (x *Verifiers_GerritCQAbility) GetCommitterList() []string

func (*Verifiers_GerritCQAbility) GetDryRunAccessList

func (x *Verifiers_GerritCQAbility) GetDryRunAccessList() []string

func (*Verifiers_GerritCQAbility) ProtoMessage

func (*Verifiers_GerritCQAbility) ProtoMessage()

func (*Verifiers_GerritCQAbility) ProtoReflect

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

func (*Verifiers_GerritCQAbility) Reset

func (x *Verifiers_GerritCQAbility) Reset()

func (*Verifiers_GerritCQAbility) String

func (x *Verifiers_GerritCQAbility) String() string

type Verifiers_GerritCQAbility_CQAction

type Verifiers_GerritCQAbility_CQAction int32

See `allow_owner_if_submittable` doc below.

const (
	Verifiers_GerritCQAbility_UNSET   Verifiers_GerritCQAbility_CQAction = 0
	Verifiers_GerritCQAbility_DRY_RUN Verifiers_GerritCQAbility_CQAction = 1
	// COMMIT implies ability to trigger dry run as well.
	Verifiers_GerritCQAbility_COMMIT Verifiers_GerritCQAbility_CQAction = 2
)

func (Verifiers_GerritCQAbility_CQAction) Descriptor

func (Verifiers_GerritCQAbility_CQAction) Descriptor() protoreflect.EnumDescriptor

func (Verifiers_GerritCQAbility_CQAction) Enum

func (x Verifiers_GerritCQAbility_CQAction) Enum() *Verifiers_GerritCQAbility_CQAction

func (Verifiers_GerritCQAbility_CQAction) EnumDescriptor

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

Deprecated: Use Verifiers_GerritCQAbility_CQAction.Descriptor instead.

func (Verifiers_GerritCQAbility_CQAction) Number

func (x Verifiers_GerritCQAbility_CQAction) Number() protoreflect.EnumNumber

func (Verifiers_GerritCQAbility_CQAction) String

func (x Verifiers_GerritCQAbility_CQAction) String() string

func (Verifiers_GerritCQAbility_CQAction) Type

func (Verifiers_GerritCQAbility_CQAction) Type() protoreflect.EnumType

type Verifiers_TreeStatus

type Verifiers_TreeStatus struct {

	// Required. URL of the project tree status app.
	Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	// contains filtered or unexported fields
}

func (*Verifiers_TreeStatus) Descriptor

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

Deprecated: Use Verifiers_TreeStatus.ProtoReflect.Descriptor instead.

func (*Verifiers_TreeStatus) GetUrl

func (x *Verifiers_TreeStatus) GetUrl() string

func (*Verifiers_TreeStatus) ProtoMessage

func (*Verifiers_TreeStatus) ProtoMessage()

func (*Verifiers_TreeStatus) ProtoReflect

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

func (*Verifiers_TreeStatus) Reset

func (x *Verifiers_TreeStatus) Reset()

func (*Verifiers_TreeStatus) String

func (x *Verifiers_TreeStatus) String() string

type Verifiers_Tryjob

type Verifiers_Tryjob struct {
	Builders []*Verifiers_Tryjob_Builder `protobuf:"bytes,1,rep,name=builders,proto3" json:"builders,omitempty"`

	RetryConfig *Verifiers_Tryjob_RetryConfig `protobuf:"bytes,2,opt,name=retry_config,json=retryConfig,proto3" json:"retry_config,omitempty"`

	CancelStaleTryjobs Toggle "" /* 140 byte string literal not displayed */

}

Tryjob configures builders which CQ may trigger and/or use to verify CL(s).

func (*Verifiers_Tryjob) Descriptor

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

Deprecated: Use Verifiers_Tryjob.ProtoReflect.Descriptor instead.

func (*Verifiers_Tryjob) GetBuilders

func (x *Verifiers_Tryjob) GetBuilders() []*Verifiers_Tryjob_Builder

func (*Verifiers_Tryjob) GetCancelStaleTryjobs

func (x *Verifiers_Tryjob) GetCancelStaleTryjobs() Toggle

Deprecated: Do not use.

func (*Verifiers_Tryjob) GetRetryConfig

func (x *Verifiers_Tryjob) GetRetryConfig() *Verifiers_Tryjob_RetryConfig

func (*Verifiers_Tryjob) ProtoMessage

func (*Verifiers_Tryjob) ProtoMessage()

func (*Verifiers_Tryjob) ProtoReflect

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

func (*Verifiers_Tryjob) Reset

func (x *Verifiers_Tryjob) Reset()

func (*Verifiers_Tryjob) String

func (x *Verifiers_Tryjob) String() string

type Verifiers_Tryjob_Builder

type Verifiers_Tryjob_Builder struct {
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`

	IncludableOnly bool `protobuf:"varint,9,opt,name=includable_only,json=includableOnly,proto3" json:"includable_only,omitempty"`

	ResultVisibility CommentLevel "" /* 139 byte string literal not displayed */

	DisableReuse bool `protobuf:"varint,2,opt,name=disable_reuse,json=disableReuse,proto3" json:"disable_reuse,omitempty"`

	CancelStale Toggle `protobuf:"varint,11,opt,name=cancel_stale,json=cancelStale,proto3,enum=cq.config.Toggle" json:"cancel_stale,omitempty"`

	TriggeredBy string `protobuf:"bytes,3,opt,name=triggered_by,json=triggeredBy,proto3" json:"triggered_by,omitempty"`

	ExperimentPercentage float32 `protobuf:"fixed32,4,opt,name=experiment_percentage,json=experimentPercentage,proto3" json:"experiment_percentage,omitempty"`

	EquivalentTo *Verifiers_Tryjob_EquivalentBuilder `protobuf:"bytes,5,opt,name=equivalent_to,json=equivalentTo,proto3" json:"equivalent_to,omitempty"`

	LocationRegexp        []string `protobuf:"bytes,6,rep,name=location_regexp,json=locationRegexp,proto3" json:"location_regexp,omitempty"`
	LocationRegexpExclude []string `protobuf:"bytes,7,rep,name=location_regexp_exclude,json=locationRegexpExclude,proto3" json:"location_regexp_exclude,omitempty"`

	OwnerWhitelistGroup []string `protobuf:"bytes,8,rep,name=owner_whitelist_group,json=ownerWhitelistGroup,proto3" json:"owner_whitelist_group,omitempty"`

}

func (*Verifiers_Tryjob_Builder) Descriptor

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

Deprecated: Use Verifiers_Tryjob_Builder.ProtoReflect.Descriptor instead.

func (*Verifiers_Tryjob_Builder) GetCancelStale

func (x *Verifiers_Tryjob_Builder) GetCancelStale() Toggle

func (*Verifiers_Tryjob_Builder) GetDisableReuse

func (x *Verifiers_Tryjob_Builder) GetDisableReuse() bool

func (*Verifiers_Tryjob_Builder) GetEquivalentTo

func (x *Verifiers_Tryjob_Builder) GetEquivalentTo() *Verifiers_Tryjob_EquivalentBuilder

func (*Verifiers_Tryjob_Builder) GetExperimentPercentage

func (x *Verifiers_Tryjob_Builder) GetExperimentPercentage() float32

func (*Verifiers_Tryjob_Builder) GetIncludableOnly

func (x *Verifiers_Tryjob_Builder) GetIncludableOnly() bool

func (*Verifiers_Tryjob_Builder) GetLocationRegexp

func (x *Verifiers_Tryjob_Builder) GetLocationRegexp() []string

func (*Verifiers_Tryjob_Builder) GetLocationRegexpExclude

func (x *Verifiers_Tryjob_Builder) GetLocationRegexpExclude() []string

func (*Verifiers_Tryjob_Builder) GetName

func (x *Verifiers_Tryjob_Builder) GetName() string

func (*Verifiers_Tryjob_Builder) GetOwnerWhitelistGroup

func (x *Verifiers_Tryjob_Builder) GetOwnerWhitelistGroup() []string

func (*Verifiers_Tryjob_Builder) GetResultVisibility

func (x *Verifiers_Tryjob_Builder) GetResultVisibility() CommentLevel

func (*Verifiers_Tryjob_Builder) GetTriggeredBy

func (x *Verifiers_Tryjob_Builder) GetTriggeredBy() string

func (*Verifiers_Tryjob_Builder) ProtoMessage

func (*Verifiers_Tryjob_Builder) ProtoMessage()

func (*Verifiers_Tryjob_Builder) ProtoReflect

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

func (*Verifiers_Tryjob_Builder) Reset

func (x *Verifiers_Tryjob_Builder) Reset()

func (*Verifiers_Tryjob_Builder) String

func (x *Verifiers_Tryjob_Builder) String() string

type Verifiers_Tryjob_EquivalentBuilder

type Verifiers_Tryjob_EquivalentBuilder struct {

	// Required. Name of this builder.
	// Format is the same in the same format as Builder.name.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Percentage expressing probability of CQ triggering this builder instead
	// of the builder to which this builder is equivalent to.
	//
	// A choice itself is made deterministically based on CL alone, hereby
	// all CQ attempts on all patchsets of a given CL will trigger the same
	// builder, assuming CQ config doesn't change in the mean time.
	//
	// Note that if `owner_whitelist_group` is also specified, the choice over
	// which of the two builders to trigger will be made only for CLs owned by
	// whitelisted group.
	//
	// If not specified, defaults to 0, meaning this builder is never
	// triggered by CQ, but an existing build can be re-used by CQ.
	//
	// To illustrate, suppose percentage=10. Then,
	//   Without owner_whitelist_group,
	//      ~10% of all CQ attempts will trigger this builder.
	//   With owner_whitelist_group set and, suppose, 1/5 of CQ attempts are
	//      ran on CLs owned by this group, then only ~(1/10)*(1/5) or
	//      ~2% of all CQ attempts will trigger this builder.
	Percentage float32 `protobuf:"fixed32,2,opt,name=percentage,proto3" json:"percentage,omitempty"`
	// If specified, limits the builder to CL owners in this group.
	OwnerWhitelistGroup string `protobuf:"bytes,3,opt,name=owner_whitelist_group,json=ownerWhitelistGroup,proto3" json:"owner_whitelist_group,omitempty"`
	// contains filtered or unexported fields
}

func (*Verifiers_Tryjob_EquivalentBuilder) Descriptor

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

Deprecated: Use Verifiers_Tryjob_EquivalentBuilder.ProtoReflect.Descriptor instead.

func (*Verifiers_Tryjob_EquivalentBuilder) GetName

func (x *Verifiers_Tryjob_EquivalentBuilder) GetName() string

func (*Verifiers_Tryjob_EquivalentBuilder) GetOwnerWhitelistGroup

func (x *Verifiers_Tryjob_EquivalentBuilder) GetOwnerWhitelistGroup() string

func (*Verifiers_Tryjob_EquivalentBuilder) GetPercentage

func (x *Verifiers_Tryjob_EquivalentBuilder) GetPercentage() float32

func (*Verifiers_Tryjob_EquivalentBuilder) ProtoMessage

func (*Verifiers_Tryjob_EquivalentBuilder) ProtoMessage()

func (*Verifiers_Tryjob_EquivalentBuilder) ProtoReflect

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

func (*Verifiers_Tryjob_EquivalentBuilder) Reset

func (x *Verifiers_Tryjob_EquivalentBuilder) Reset()

func (*Verifiers_Tryjob_EquivalentBuilder) String

func (x *Verifiers_Tryjob_EquivalentBuilder) String() string

type Verifiers_Tryjob_IncludableBuilder

type Verifiers_Tryjob_IncludableBuilder struct {

	// Required. Name of this builder.
	// Format is the same in the same format as Builder.name.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// contains filtered or unexported fields
}

Builder which can be included via `CQ-Include-Trybots:` in CL description.

func (*Verifiers_Tryjob_IncludableBuilder) Descriptor

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

Deprecated: Use Verifiers_Tryjob_IncludableBuilder.ProtoReflect.Descriptor instead.

func (*Verifiers_Tryjob_IncludableBuilder) GetName

func (x *Verifiers_Tryjob_IncludableBuilder) GetName() string

func (*Verifiers_Tryjob_IncludableBuilder) ProtoMessage

func (*Verifiers_Tryjob_IncludableBuilder) ProtoMessage()

func (*Verifiers_Tryjob_IncludableBuilder) ProtoReflect

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

func (*Verifiers_Tryjob_IncludableBuilder) Reset

func (x *Verifiers_Tryjob_IncludableBuilder) Reset()

func (*Verifiers_Tryjob_IncludableBuilder) String

func (x *Verifiers_Tryjob_IncludableBuilder) String() string

type Verifiers_Tryjob_RetryConfig

type Verifiers_Tryjob_RetryConfig struct {
	SingleQuota int32 `protobuf:"varint,1,opt,name=single_quota,json=singleQuota,proto3" json:"single_quota,omitempty"`

	GlobalQuota int32 `protobuf:"varint,2,opt,name=global_quota,json=globalQuota,proto3" json:"global_quota,omitempty"`

	FailureWeight int32 `protobuf:"varint,3,opt,name=failure_weight,json=failureWeight,proto3" json:"failure_weight,omitempty"`

	TransientFailureWeight int32 "" /* 130 byte string literal not displayed */

	TimeoutWeight int32 `protobuf:"varint,5,opt,name=timeout_weight,json=timeoutWeight,proto3" json:"timeout_weight,omitempty"`

}

Collection of parameters for deciding whether to retry a single build. If parameter is not specified, its value defaults to 0 (per proto3). Thus, omitting all parameters means no retries of any kind.

func (*Verifiers_Tryjob_RetryConfig) Descriptor

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

Deprecated: Use Verifiers_Tryjob_RetryConfig.ProtoReflect.Descriptor instead.

func (*Verifiers_Tryjob_RetryConfig) GetFailureWeight

func (x *Verifiers_Tryjob_RetryConfig) GetFailureWeight() int32

func (*Verifiers_Tryjob_RetryConfig) GetGlobalQuota

func (x *Verifiers_Tryjob_RetryConfig) GetGlobalQuota() int32

func (*Verifiers_Tryjob_RetryConfig) GetSingleQuota

func (x *Verifiers_Tryjob_RetryConfig) GetSingleQuota() int32

func (*Verifiers_Tryjob_RetryConfig) GetTimeoutWeight

func (x *Verifiers_Tryjob_RetryConfig) GetTimeoutWeight() int32

func (*Verifiers_Tryjob_RetryConfig) GetTransientFailureWeight

func (x *Verifiers_Tryjob_RetryConfig) GetTransientFailureWeight() int32

func (*Verifiers_Tryjob_RetryConfig) ProtoMessage

func (*Verifiers_Tryjob_RetryConfig) ProtoMessage()

func (*Verifiers_Tryjob_RetryConfig) ProtoReflect

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

func (*Verifiers_Tryjob_RetryConfig) Reset

func (x *Verifiers_Tryjob_RetryConfig) Reset()

func (*Verifiers_Tryjob_RetryConfig) String

func (x *Verifiers_Tryjob_RetryConfig) String() string

Package Files

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier