Commit dd013e2b authored by Andrii Shyshkalov's avatar Andrii Shyshkalov Committed by Commit Bot

Update CQ config protobuf.

R=machenbach@chromium.org
BUG=644915

Change-Id: Id0035e8b286c0f5b4c0c41aec7458965b9bd1a39
Reviewed-on: https://chromium-review.googlesource.com/421514Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@chromium.org>
parent 7d518839
Import of CQ protobuf config from infra_internal repo.
Version: fde09c7a7b5e47b94a6aeffa24c8f339df0517a8 from Dec 19, 2016.
......@@ -39,7 +39,7 @@ infra/infra repository and go utilities `make go-prepare`.
## Notes
1. Please make sure to use proto3-compatible yntax, e.g. no default
1. Please make sure to use proto3-compatible syntax, e.g. no default
values, no required fields. As of this writing (Jan 2016),
the Go protobuf compiler has been upgraded to 3.0.0. So, if you can generate go
bindings, all is good.
......
......@@ -25,6 +25,12 @@ var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
// This message describes a Commit Queue configuration. The config file cq.cfg
// should be stored in the config directory located on the branch that this CQ
// should commit to.
......@@ -36,43 +42,40 @@ type Config struct {
// name for CLs on Rietveld, name of the project in the status app, internal
// name for logging etc. CQ name should not be confused with the project name
// in LUCI as there may be multiple CQs per project.
CqName *string `protobuf:"bytes,2,opt,name=cq_name" json:"cq_name,omitempty"`
CqName *string `protobuf:"bytes,2,opt,name=cq_name,json=cqName" json:"cq_name,omitempty"`
// List of verifiers that verify if the CL is ready to be committed.
Verifiers *Verifiers `protobuf:"bytes,3,opt,name=verifiers" json:"verifiers,omitempty"`
// URL of the CQ status app to push updates to.
CqStatusUrl *string `protobuf:"bytes,4,opt,name=cq_status_url" json:"cq_status_url,omitempty"`
// When true, hash of the commit is not posted by CQ. This is used for
// projects using gnumbd as latter publishes actual hash later. Default value
// is false.
HideRefInCommittedMsg *bool `protobuf:"varint,5,opt,name=hide_ref_in_committed_msg" json:"hide_ref_in_committed_msg,omitempty"`
CqStatusUrl *string `protobuf:"bytes,4,opt,name=cq_status_url,json=cqStatusUrl" json:"cq_status_url,omitempty"`
// DO NOT USE. Kept here for validator error messages.
HideRefInCommittedMsg *bool `protobuf:"varint,5,opt,name=hide_ref_in_committed_msg,json=hideRefInCommittedMsg" json:"hide_ref_in_committed_msg,omitempty"`
// Delay between commit bursts in seconds. Default value is 480.
CommitBurstDelay *int32 `protobuf:"varint,6,opt,name=commit_burst_delay" json:"commit_burst_delay,omitempty"`
CommitBurstDelay *int32 `protobuf:"varint,6,opt,name=commit_burst_delay,json=commitBurstDelay" json:"commit_burst_delay,omitempty"`
// Maximum number of commits done sequentially, before waiting for
// commit_burst_delay. Default value is 4.
MaxCommitBurst *int32 `protobuf:"varint,7,opt,name=max_commit_burst" json:"max_commit_burst,omitempty"`
MaxCommitBurst *int32 `protobuf:"varint,7,opt,name=max_commit_burst,json=maxCommitBurst" json:"max_commit_burst,omitempty"`
// Defines whether a CQ is used in production. Allows to disable CQ for a
// given branch. Default is true.
InProduction *bool `protobuf:"varint,8,opt,name=in_production" json:"in_production,omitempty"`
InProduction *bool `protobuf:"varint,8,opt,name=in_production,json=inProduction" json:"in_production,omitempty"`
// Configuration options for Rietveld code review.
Rietveld *Rietveld `protobuf:"bytes,9,opt,name=rietveld" json:"rietveld,omitempty"`
// EXPERIMENTAL! Configuration options for Gerrit code review.
// TODO(tandrii): update this doc (GERRIT).
// Configuration options for Gerrit code review.
Gerrit *Gerrit `protobuf:"bytes,15,opt,name=gerrit" json:"gerrit,omitempty"`
// This can be used to override the Git repository URL used to checkout and
// commit changes on CQ host. This should only be used in case, when the
// source repository is not supported by luci-config (e.g. GitHub).
GitRepoUrl *string `protobuf:"bytes,10,opt,name=git_repo_url" json:"git_repo_url,omitempty"`
GitRepoUrl *string `protobuf:"bytes,10,opt,name=git_repo_url,json=gitRepoUrl" json:"git_repo_url,omitempty"`
// Target ref to commit to. This can be used to specify a different ref than
// the one where the luci config is located. This is useful, e.g. for projects
// that use gnumbd where CQ should commit into a pending ref.
TargetRef *string `protobuf:"bytes,11,opt,name=target_ref" json:"target_ref,omitempty"`
// Deprecated. URL of the SVN repository. We are deprecating SVN support.
SvnRepoUrl *string `protobuf:"bytes,12,opt,name=svn_repo_url" json:"svn_repo_url,omitempty"`
TargetRef *string `protobuf:"bytes,11,opt,name=target_ref,json=targetRef" json:"target_ref,omitempty"`
// DO NOT USE. Kept here for validator error messages.
SvnRepoUrl *string `protobuf:"bytes,12,opt,name=svn_repo_url,json=svnRepoUrl" json:"svn_repo_url,omitempty"`
// If present, the CQ will refrain from processing any commits whose start
// time is >= this time.
//
// This is an UTC RFC3339 (stiptime(tm)) string representing the time.
DrainingStartTime *string `protobuf:"bytes,13,opt,name=draining_start_time" json:"draining_start_time,omitempty"`
DrainingStartTime *string `protobuf:"bytes,13,opt,name=draining_start_time,json=drainingStartTime" json:"draining_start_time,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -182,12 +185,8 @@ func (m *Config) GetDrainingStartTime() string {
type Rietveld struct {
// Required. URL of the codereview site.
Url *string `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
// List of regular expressions used to check if CL's base URL should be
// processed by this CQ. This may be useful if a single branch has multiple
// sub-directories that are handled by different CQs. When no regular
// expressions are specified, the regular expression '.*', which matches any
// directory, is used.
ProjectBases []string `protobuf:"bytes,2,rep,name=project_bases" json:"project_bases,omitempty"`
// DO NOT USE. Kept here for validator error messages.
ProjectBases []string `protobuf:"bytes,2,rep,name=project_bases,json=projectBases" json:"project_bases,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -210,15 +209,10 @@ func (m *Rietveld) GetProjectBases() []string {
return nil
}
// Gerrit CQ is EXPERIMENTAL! See http://crbug.com/493899 for more info.
//
// Unlike Rietveld, Gerrit doesn't need a separate url.
// Instead, the git_repo_url must be specified on the Gerrit instance,
// and CQ will deduce Gerrit url from it.
//
// TODO(tandrii): support Rietveld and Gerrit at the same time.
// This basically requires to start two CQ instances, instead of one.
//
// For example, if https://chromium.googlesource.com/infra/infra.git is your
// repo url provided in `git_repo_url` above, then
// https://chromium-review.googlesource.com/#/admin/projects/infra/infra should
......@@ -230,13 +224,19 @@ func (m *Rietveld) GetProjectBases() []string {
// see it. This will come handy to enable and customize the CQ-related workflows
// for your project.
type Gerrit struct {
// Optional. If set, tells CQ vote on a given label to mark result of CQ run.
// The vote is either -1 if failed or 1 on success, and will be given on
// Optional. If set, tells CQ to vote on a given label to mark result of CQ
// run. The vote is either -1 if failed or 1 on success, and will be given on
// non-dry runs only.
// This vote can then be used in Gerrit's rule for submitting issues, so as to
// require CQ run. CQ will attempt to submit issue only after setting this
// label.
CqVerifiedLabel *string `protobuf:"bytes,1,opt,name=cq_verified_label" json:"cq_verified_label,omitempty"`
CqVerifiedLabel *string `protobuf:"bytes,1,opt,name=cq_verified_label,json=cqVerifiedLabel" json:"cq_verified_label,omitempty"`
// Optional and only allowed if cq_verified_label is set. Default: False.
// If set, tells CQ to vote on the Verified label even on dry run.
// This is useful if CQ has no presubmit builders, as dry run would be
// totally equivalent to full run, except that CQ won't try to actually submit
// the code.
DryRunSetsCqVerifiedLabel *bool `protobuf:"varint,2,opt,name=dry_run_sets_cq_verified_label,json=dryRunSetsCqVerifiedLabel" json:"dry_run_sets_cq_verified_label,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -252,6 +252,13 @@ func (m *Gerrit) GetCqVerifiedLabel() string {
return ""
}
func (m *Gerrit) GetDryRunSetsCqVerifiedLabel() bool {
if m != nil && m.DryRunSetsCqVerifiedLabel != nil {
return *m.DryRunSetsCqVerifiedLabel
}
return false
}
// 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 landed. Configuration file
// describes types of verifiers that should be applied to each CL and their
......@@ -259,19 +266,21 @@ func (m *Gerrit) GetCqVerifiedLabel() string {
type Verifiers struct {
// This verifier is used to ensure that an LGTM was posted to the code review
// site from a valid project committer.
// This verifier is not supported with Gerrit.
ReviewerLgtm *Verifiers_ReviewerLgtmVerifier `protobuf:"bytes,1,opt,name=reviewer_lgtm" json:"reviewer_lgtm,omitempty"`
// It is ignored in case of Gerrit, and you should not declare it unless you
// use both Gerrit and Rietveld for codereview. Unlike Rietveld, Gerrit has
// its own ACL system which should be set up by project admins.
ReviewerLgtm *Verifiers_ReviewerLgtmVerifier `protobuf:"bytes,1,opt,name=reviewer_lgtm,json=reviewerLgtm" json:"reviewer_lgtm,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_TreeStatusLgtmVerifier `protobuf:"bytes,2,opt,name=tree_status" json:"tree_status,omitempty"`
TreeStatus *Verifiers_TreeStatusLgtmVerifier `protobuf:"bytes,2,opt,name=tree_status,json=treeStatus" json:"tree_status,omitempty"`
// This verifier triggers a set of tryjobs that are to be run on builders on
// Buildbot. It automatically retries failed try-jobs 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.
TryJob *Verifiers_TryJobVerifier `protobuf:"bytes,3,opt,name=try_job" json:"try_job,omitempty"`
TryJob *Verifiers_TryJobVerifier `protobuf:"bytes,3,opt,name=try_job,json=tryJob" json:"try_job,omitempty"`
// This verifier is used to ensure that the author has signed Google's
// Contributor License Agreement.
SignCla *Verifiers_SignCLAVerifier `protobuf:"bytes,4,opt,name=sign_cla" json:"sign_cla,omitempty"`
SignCla *Verifiers_SignCLAVerifier `protobuf:"bytes,4,opt,name=sign_cla,json=signCla" json:"sign_cla,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -312,20 +321,20 @@ type Verifiers_ReviewerLgtmVerifier struct {
// Required. Name of the chrome-infra-auth group, which contains the list of
// identities authorized to approve (lgtm) a CL and trigger CQ run or dry
// run.
CommitterList *string `protobuf:"bytes,1,opt,name=committer_list" json:"committer_list,omitempty"`
CommitterList *string `protobuf:"bytes,1,opt,name=committer_list,json=committerList" json:"committer_list,omitempty"`
// Number of seconds to wait for LGTM on CQ. Default value is 0.
MaxWaitSecs *int32 `protobuf:"varint,2,opt,name=max_wait_secs" json:"max_wait_secs,omitempty"`
MaxWaitSecs *int32 `protobuf:"varint,2,opt,name=max_wait_secs,json=maxWaitSecs" json:"max_wait_secs,omitempty"`
// Message to be posted to code review site when no LGTM is found. Default
// value is "No LGTM from a valid reviewer yet. Only full committers are "
// "accepted.\nEven if an LGTM may have been provided, it was from a "
// "non-committer,\n_not_ a full super star committer.\nSee "
// "http://www.chromium.org/getting-involved/become-a-committer\nNote that "
// "this has nothing to do with OWNERS files."
NoLgtmMsg *string `protobuf:"bytes,3,opt,name=no_lgtm_msg" json:"no_lgtm_msg,omitempty"`
NoLgtmMsg *string `protobuf:"bytes,3,opt,name=no_lgtm_msg,json=noLgtmMsg" json:"no_lgtm_msg,omitempty"`
// Optional, but recommended. Name of the chrome-infra-auth group,
// which contains the list of identities authorized to trigger CQ dry run.
// This is usually the same group as tryjob-access.
DryRunAccessList *string `protobuf:"bytes,4,opt,name=dry_run_access_list" json:"dry_run_access_list,omitempty"`
DryRunAccessList *string `protobuf:"bytes,4,opt,name=dry_run_access_list,json=dryRunAccessList" json:"dry_run_access_list,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -366,7 +375,7 @@ func (m *Verifiers_ReviewerLgtmVerifier) GetDryRunAccessList() string {
type Verifiers_TreeStatusLgtmVerifier struct {
// Required. URL of the project tree status app.
TreeStatusUrl *string `protobuf:"bytes,1,opt,name=tree_status_url" json:"tree_status_url,omitempty"`
TreeStatusUrl *string `protobuf:"bytes,1,opt,name=tree_status_url,json=treeStatusUrl" json:"tree_status_url,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -389,7 +398,7 @@ type Verifiers_TryJobVerifier struct {
Buckets []*Verifiers_TryJobVerifier_Bucket `protobuf:"bytes,1,rep,name=buckets" json:"buckets,omitempty"`
// Provides project specific trybot retry configuration. This overrides the
// defaults used in the CQ.
TryJobRetryConfig *Verifiers_TryJobVerifier_TryJobRetryConfig `protobuf:"bytes,2,opt,name=try_job_retry_config" json:"try_job_retry_config,omitempty"`
TryJobRetryConfig *Verifiers_TryJobVerifier_TryJobRetryConfig `protobuf:"bytes,2,opt,name=try_job_retry_config,json=tryJobRetryConfig" json:"try_job_retry_config,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -418,12 +427,12 @@ type Verifiers_TryJobVerifier_Builder struct {
// Optionally specify a builder name that triggers the given builder.
// Otherwise, CQ will trigger this builder (default). If in doubt, you
// probably won't need this.
TriggeredBy *string `protobuf:"bytes,2,opt,name=triggered_by" json:"triggered_by,omitempty"`
TriggeredBy *string `protobuf:"bytes,2,opt,name=triggered_by,json=triggeredBy" json:"triggered_by,omitempty"`
// When this field is present, it marks given builder as experimental. It
// is only executed on a given percentage of the CLs and the outcome does
// not affect the decicion whether a CL can land or not. This is typically
// used to test new builders and estimate their capacity requirements.
ExperimentPercentage *float32 `protobuf:"fixed32,4,opt,name=experiment_percentage" json:"experiment_percentage,omitempty"`
ExperimentPercentage *float32 `protobuf:"fixed32,4,opt,name=experiment_percentage,json=experimentPercentage" json:"experiment_percentage,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -488,15 +497,15 @@ func (m *Verifiers_TryJobVerifier_Bucket) GetBuilders() []*Verifiers_TryJobVerif
type Verifiers_TryJobVerifier_TryJobRetryConfig struct {
// Retry quota for a single tryjob.
TryJobRetryQuota *int32 `protobuf:"varint,1,opt,name=try_job_retry_quota" json:"try_job_retry_quota,omitempty"`
TryJobRetryQuota *int32 `protobuf:"varint,1,opt,name=try_job_retry_quota,json=tryJobRetryQuota" json:"try_job_retry_quota,omitempty"`
// Retry quota for all tryjobs in a CL.
GlobalRetryQuota *int32 `protobuf:"varint,2,opt,name=global_retry_quota" json:"global_retry_quota,omitempty"`
GlobalRetryQuota *int32 `protobuf:"varint,2,opt,name=global_retry_quota,json=globalRetryQuota" json:"global_retry_quota,omitempty"`
// The weight assigned to each tryjob failure.
FailureRetryWeight *int32 `protobuf:"varint,3,opt,name=failure_retry_weight" json:"failure_retry_weight,omitempty"`
FailureRetryWeight *int32 `protobuf:"varint,3,opt,name=failure_retry_weight,json=failureRetryWeight" json:"failure_retry_weight,omitempty"`
// The weight assigned to each transient failure.
TransientFailureRetryWeight *int32 `protobuf:"varint,4,opt,name=transient_failure_retry_weight" json:"transient_failure_retry_weight,omitempty"`
TransientFailureRetryWeight *int32 `protobuf:"varint,4,opt,name=transient_failure_retry_weight,json=transientFailureRetryWeight" json:"transient_failure_retry_weight,omitempty"`
// The weight assigned to tryjob timeouts.
TimeoutRetryWeight *int32 `protobuf:"varint,5,opt,name=timeout_retry_weight" json:"timeout_retry_weight,omitempty"`
TimeoutRetryWeight *int32 `protobuf:"varint,5,opt,name=timeout_retry_weight,json=timeoutRetryWeight" json:"timeout_retry_weight,omitempty"`
XXX_unrecognized []byte `json:"-"`
}
......@@ -569,49 +578,68 @@ func init() {
proto.RegisterType((*Verifiers_SignCLAVerifier)(nil), "Verifiers.SignCLAVerifier")
}
func init() { proto.RegisterFile("cq.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{
// 687 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x74, 0x54, 0xdd, 0x4e, 0xdb, 0x4c,
0x10, 0x55, 0x08, 0x49, 0x9c, 0x31, 0x90, 0x0f, 0x13, 0xc0, 0x98, 0xaf, 0x2d, 0x50, 0xa9, 0xaa,
0xda, 0xca, 0x12, 0xa9, 0xd4, 0xfb, 0xc2, 0x45, 0xd5, 0x96, 0x2b, 0xa8, 0x7a, 0xbb, 0x5a, 0xdb,
0x13, 0xb3, 0xd4, 0x3f, 0xb0, 0xbb, 0x4e, 0xc8, 0x5b, 0xf5, 0x81, 0x7a, 0xd7, 0x47, 0xe8, 0x0b,
0x74, 0xbc, 0x76, 0x7e, 0x4b, 0xae, 0x6c, 0xcf, 0x39, 0x33, 0x9e, 0x39, 0x73, 0x76, 0xc1, 0x0a,
0x1f, 0xfc, 0x7b, 0x99, 0xeb, 0xfc, 0xec, 0xf7, 0x06, 0xb4, 0x2f, 0xf3, 0x6c, 0x28, 0x62, 0xa7,
0x07, 0x9d, 0x11, 0x4a, 0x25, 0xf2, 0xcc, 0x6d, 0x9c, 0x34, 0x5e, 0xb7, 0xca, 0x40, 0xf8, 0xc0,
0x32, 0x9e, 0xa2, 0xbb, 0x41, 0x81, 0xae, 0xf3, 0x0c, 0xba, 0xc4, 0x10, 0x43, 0x41, 0x34, 0xb7,
0x49, 0x21, 0x7b, 0x00, 0xfe, 0xf7, 0x69, 0xc4, 0xd9, 0x87, 0x6d, 0xe2, 0x2b, 0xcd, 0x75, 0xa1,
0x58, 0x21, 0x13, 0x77, 0xd3, 0x64, 0x9d, 0xc2, 0xd1, 0xad, 0x88, 0x90, 0x49, 0x1c, 0x32, 0x91,
0xb1, 0x30, 0x4f, 0x53, 0xa1, 0x35, 0x46, 0x2c, 0x55, 0xb1, 0xdb, 0x22, 0x8a, 0xe5, 0x78, 0xe0,
0x54, 0x61, 0x16, 0x14, 0x52, 0x69, 0x16, 0x61, 0xc2, 0x27, 0x6e, 0xdb, 0x74, 0xe1, 0xc2, 0x7f,
0x29, 0x7f, 0x64, 0x8b, 0xb8, 0xdb, 0x31, 0x08, 0xfd, 0x8f, 0xea, 0xd1, 0x1c, 0x51, 0x11, 0xea,
0xb2, 0x6d, 0xcb, 0x14, 0x3b, 0x06, 0x4b, 0x0a, 0xd4, 0x23, 0x4c, 0x22, 0xb7, 0x6b, 0x9a, 0xec,
0xfa, 0xd7, 0x75, 0xc0, 0x39, 0x84, 0x76, 0x8c, 0x52, 0x0a, 0xed, 0xf6, 0x0c, 0xd4, 0xf1, 0x3f,
0x99, 0x4f, 0xa7, 0x0f, 0x5b, 0x31, 0xd5, 0x97, 0x78, 0x9f, 0x9b, 0xde, 0xc1, 0xf4, 0xee, 0x00,
0x68, 0x2e, 0x63, 0x2c, 0x81, 0xa1, 0x6b, 0x9b, 0x18, 0x31, 0xd5, 0x28, 0x9b, 0x33, 0xb7, 0x4c,
0xf4, 0x18, 0xf6, 0x22, 0xc9, 0x45, 0x26, 0xb2, 0xb8, 0x94, 0x40, 0x6a, 0xa6, 0x05, 0x09, 0xb7,
0x5d, 0x82, 0x67, 0x3e, 0x58, 0xb3, 0x0e, 0x6c, 0x68, 0x96, 0x59, 0x0d, 0x93, 0x45, 0x23, 0x50,
0xff, 0x77, 0x18, 0xd2, 0x64, 0x5c, 0xa1, 0x22, 0xa1, 0x9b, 0xc4, 0x7f, 0x09, 0xed, 0xba, 0xad,
0x23, 0xd8, 0x25, 0x4d, 0x6b, 0xd5, 0x23, 0x96, 0xf0, 0x00, 0xeb, 0xdc, 0xb3, 0x3f, 0x6d, 0xe8,
0xce, 0xc5, 0xff, 0x00, 0xdb, 0x12, 0x47, 0x02, 0xc7, 0x28, 0x59, 0x12, 0xeb, 0xd4, 0x90, 0xec,
0xc1, 0x8b, 0xf9, 0x7e, 0xfc, 0xeb, 0x1a, 0xbf, 0x22, 0x78, 0x1a, 0xa5, 0x3c, 0x5b, 0x4b, 0xc4,
0x7a, 0x6d, 0x66, 0xd1, 0xf6, 0xe0, 0x74, 0x21, 0xeb, 0x1b, 0xa1, 0x37, 0x06, 0x5c, 0xca, 0x7b,
0x03, 0x1d, 0x2d, 0x27, 0xec, 0x2e, 0x0f, 0x6a, 0x27, 0x1c, 0x2d, 0xe5, 0x4c, 0xbe, 0xe4, 0xc1,
0x8c, 0xfb, 0x0e, 0x2c, 0x25, 0x62, 0x5a, 0x7d, 0xc2, 0x8d, 0x27, 0xec, 0x81, 0xb7, 0x40, 0xbe,
0x21, 0xe8, 0xf2, 0xea, 0xe3, 0x34, 0xe0, 0x8d, 0xa1, 0xff, 0x64, 0xa7, 0x07, 0xb0, 0x33, 0xf5,
0x0e, 0x8d, 0x28, 0xc8, 0x06, 0x33, 0x0d, 0x4b, 0x83, 0x8c, 0x39, 0xad, 0x4f, 0x61, 0x58, 0xcd,
0xd0, 0x72, 0xf6, 0xc0, 0xce, 0x72, 0x23, 0x85, 0x31, 0x5a, 0x73, 0xbe, 0xa5, 0x09, 0x93, 0x45,
0xc6, 0x78, 0x18, 0xa2, 0x52, 0x55, 0x21, 0x63, 0x54, 0xef, 0x1c, 0x0e, 0xd6, 0x0c, 0x7b, 0x08,
0xbd, 0x05, 0x91, 0xd8, 0x6c, 0x7f, 0xde, 0xaf, 0x26, 0xec, 0xac, 0x0c, 0x7b, 0x0e, 0x9d, 0xa0,
0x08, 0x7f, 0xa0, 0x56, 0xc4, 0x69, 0xd2, 0xac, 0x27, 0x6b, 0x85, 0xf1, 0x2f, 0x0c, 0xd1, 0xf9,
0x0c, 0xfd, 0x5a, 0x4b, 0x72, 0x55, 0xf9, 0x16, 0x9a, 0x13, 0x59, 0x2f, 0xe3, 0xed, 0xfa, 0xfc,
0xea, 0xf3, 0xba, 0xcc, 0xa9, 0x0e, 0xb1, 0x77, 0x05, 0x9d, 0x8b, 0x42, 0x24, 0x11, 0x35, 0xb2,
0x05, 0x9b, 0xe6, 0xec, 0x36, 0xa6, 0xae, 0xd5, 0x52, 0xc4, 0x64, 0x7e, 0xb2, 0x51, 0x30, 0x99,
0x9d, 0xe8, 0x7d, 0x7c, 0xbc, 0xa7, 0x72, 0x29, 0x66, 0x9a, 0xd1, 0x4b, 0x48, 0x4f, 0x1e, 0xa3,
0x51, 0x64, 0xc3, 0xfb, 0x0a, 0xed, 0xba, 0xc5, 0xe5, 0x62, 0xef, 0xc1, 0x0a, 0xaa, 0xbf, 0x54,
0x8e, 0x5d, 0x75, 0xcc, 0xca, 0x90, 0x86, 0xe9, 0xfd, 0x6c, 0xc0, 0xee, 0x3f, 0x0d, 0x97, 0x1b,
0x59, 0x9e, 0xfd, 0xa1, 0xc8, 0x35, 0xaf, 0x6f, 0x20, 0xba, 0x17, 0xe2, 0x24, 0x0f, 0x78, 0xb2,
0x84, 0x55, 0xfb, 0xfd, 0x1f, 0xfa, 0x43, 0x2e, 0x92, 0x42, 0x62, 0x0d, 0x8e, 0x51, 0xc4, 0xb7,
0xda, 0x2c, 0xba, 0xe5, 0xbc, 0x82, 0xe7, 0x5a, 0xf2, 0x4c, 0x89, 0x72, 0xae, 0x27, 0x79, 0x9b,
0xd3, 0x2a, 0xe5, 0x39, 0xcd, 0x0b, 0xbd, 0x8c, 0x96, 0xf7, 0x52, 0xcb, 0xdb, 0x85, 0xde, 0x8a,
0x3b, 0xff, 0x06, 0x00, 0x00, 0xff, 0xff, 0xe9, 0x92, 0xf5, 0x6a, 0x3b, 0x05, 0x00, 0x00,
// 959 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x74, 0x55, 0x5b, 0x6f, 0x23, 0xb5,
0x17, 0x57, 0xd2, 0xe6, 0x76, 0x26, 0x69, 0x53, 0xff, 0xbb, 0x7f, 0xa6, 0x41, 0x74, 0xb3, 0x85,
0x45, 0x11, 0x97, 0x68, 0x15, 0xc4, 0x0b, 0x02, 0x89, 0x26, 0x2b, 0x10, 0xa8, 0xa0, 0xc5, 0xdd,
0x65, 0x1f, 0x40, 0xb2, 0x9c, 0x99, 0x93, 0x59, 0x2f, 0x73, 0x49, 0x6c, 0x4f, 0xda, 0x7c, 0x14,
0x78, 0x45, 0xbc, 0xf3, 0x11, 0x91, 0xed, 0x99, 0x49, 0xd2, 0x76, 0xdf, 0xe2, 0xdf, 0xe5, 0x78,
0xfc, 0xf3, 0x39, 0x0e, 0xb4, 0x83, 0xd5, 0x78, 0x29, 0x33, 0x9d, 0x5d, 0xfc, 0x7d, 0x08, 0xcd,
0x59, 0x96, 0x2e, 0x44, 0x44, 0x7c, 0x68, 0xad, 0x51, 0x2a, 0x91, 0xa5, 0x7e, 0x6d, 0x58, 0x1b,
0x35, 0x68, 0xb9, 0x24, 0xef, 0x41, 0x2b, 0x58, 0xb1, 0x94, 0x27, 0xe8, 0xd7, 0x87, 0xb5, 0x51,
0x87, 0x36, 0x83, 0xd5, 0xcf, 0x3c, 0x41, 0x32, 0x82, 0xce, 0x1a, 0xa5, 0x58, 0x08, 0x94, 0xca,
0x3f, 0x18, 0xd6, 0x46, 0xde, 0x04, 0xc6, 0xbf, 0x96, 0x08, 0xdd, 0x92, 0xe4, 0x02, 0x7a, 0xc1,
0x8a, 0x29, 0xcd, 0x75, 0xae, 0x58, 0x2e, 0x63, 0xff, 0xd0, 0x16, 0xf2, 0x82, 0xd5, 0xb5, 0xc5,
0x5e, 0xc9, 0x98, 0x7c, 0x0d, 0x67, 0x6f, 0x44, 0x88, 0x4c, 0xe2, 0x82, 0x89, 0x94, 0x05, 0x59,
0x92, 0x08, 0xad, 0x31, 0x64, 0x89, 0x8a, 0xfc, 0xc6, 0xb0, 0x36, 0x6a, 0x4f, 0xeb, 0x7e, 0x8d,
0x3e, 0x32, 0x22, 0x8a, 0x8b, 0x1f, 0xd2, 0x59, 0xa9, 0xf8, 0x49, 0x45, 0xe4, 0x33, 0x20, 0xce,
0xc1, 0xe6, 0xb9, 0x54, 0x9a, 0x85, 0x18, 0xf3, 0x8d, 0xdf, 0xb4, 0x27, 0xe9, 0x3b, 0x66, 0x6a,
0x88, 0xe7, 0x06, 0x27, 0x23, 0xe8, 0x27, 0xfc, 0x96, 0xed, 0x3a, 0xfc, 0x96, 0xd5, 0x1e, 0x25,
0xfc, 0x76, 0xb6, 0x95, 0x93, 0x0f, 0xa1, 0x27, 0x52, 0xb6, 0x94, 0x59, 0x98, 0x07, 0xda, 0x84,
0xd3, 0x36, 0x5f, 0x42, 0xbb, 0x22, 0x7d, 0x51, 0x61, 0xe4, 0x29, 0xb4, 0xa5, 0x40, 0xbd, 0xc6,
0x38, 0xf4, 0x3b, 0x36, 0x87, 0xce, 0x98, 0x16, 0x00, 0xad, 0x28, 0xf2, 0x18, 0x9a, 0x11, 0x4a,
0x29, 0xb4, 0x7f, 0x6c, 0x45, 0xad, 0xf1, 0xf7, 0x76, 0x49, 0x0b, 0x98, 0x0c, 0xa1, 0x1b, 0x09,
0xcd, 0x24, 0x2e, 0x33, 0x9b, 0x12, 0xd8, 0x94, 0x20, 0x12, 0x9a, 0xe2, 0x32, 0x33, 0x21, 0x7d,
0x00, 0xa0, 0xb9, 0x8c, 0xd0, 0x88, 0x16, 0xbe, 0x67, 0xf9, 0x8e, 0x43, 0x28, 0x2e, 0xc8, 0x47,
0xd0, 0x55, 0xeb, 0x74, 0x5b, 0xa0, 0x6b, 0x04, 0x36, 0x36, 0x50, 0xeb, 0xb4, 0x2c, 0x32, 0x86,
0xff, 0x85, 0x92, 0x8b, 0x54, 0xa4, 0x91, 0xb9, 0x13, 0xa9, 0x99, 0x16, 0x09, 0xfa, 0x3d, 0x5b,
0xed, 0xa4, 0xa4, 0xae, 0x0d, 0xf3, 0x52, 0x24, 0x78, 0x71, 0x09, 0xed, 0xf2, 0x34, 0xa4, 0x0f,
0x07, 0xa6, 0x70, 0xcd, 0x6a, 0xcd, 0x4f, 0x93, 0xd0, 0x52, 0x66, 0x6f, 0x31, 0xd0, 0x6c, 0xce,
0x15, 0x2a, 0xbf, 0x3e, 0x3c, 0x18, 0x75, 0x68, 0xb7, 0x00, 0xa7, 0x06, 0xbb, 0xb8, 0x81, 0xa6,
0x3b, 0x2b, 0xf9, 0x04, 0x4e, 0x82, 0x15, 0x2b, 0x5a, 0x23, 0x64, 0x31, 0x9f, 0x63, 0x59, 0xee,
0x38, 0x58, 0x15, 0xdd, 0x13, 0x5e, 0x19, 0x98, 0x5c, 0xc2, 0x79, 0x28, 0x37, 0x4c, 0xe6, 0x29,
0x53, 0xa8, 0x15, 0xbb, 0x6f, 0xac, 0xdb, 0xdb, 0x38, 0x0b, 0xe5, 0x86, 0xe6, 0xe9, 0x35, 0x6a,
0x35, 0xdb, 0x2f, 0x71, 0xf1, 0x4f, 0x07, 0x3a, 0x55, 0x4b, 0x92, 0xe7, 0xd0, 0x93, 0xb8, 0x16,
0x78, 0x83, 0x92, 0xc5, 0x91, 0x4e, 0xec, 0xc6, 0xde, 0xe4, 0xf1, 0xb6, 0x6b, 0xc7, 0xb4, 0xe0,
0xaf, 0x22, 0x9d, 0x94, 0x28, 0xed, 0xca, 0x1d, 0x94, 0x4c, 0xc1, 0xd3, 0x12, 0xb1, 0xe8, 0x67,
0xfb, 0x0d, 0xde, 0xe4, 0xc9, 0x4e, 0x8d, 0x97, 0x12, 0xd1, 0x35, 0xf6, 0x5e, 0x15, 0xd0, 0x15,
0x4e, 0x26, 0xd0, 0xd2, 0x72, 0xc3, 0xde, 0x66, 0xf3, 0x62, 0x72, 0xce, 0xf6, 0xfc, 0x9b, 0x1f,
0xb3, 0x79, 0xe5, 0x6b, 0x6a, 0xbb, 0x26, 0x5f, 0x42, 0x5b, 0x89, 0x28, 0x65, 0x41, 0xcc, 0xed,
0x00, 0x79, 0x93, 0xc1, 0x8e, 0xe9, 0x5a, 0x44, 0xe9, 0xec, 0xea, 0xb2, 0x72, 0xb5, 0x8c, 0x76,
0x16, 0xf3, 0xc1, 0xbf, 0x35, 0x38, 0x7d, 0xe8, 0x54, 0xe4, 0x29, 0x1c, 0x95, 0x53, 0x26, 0x59,
0x2c, 0x94, 0x2e, 0xee, 0xa1, 0x57, 0xa1, 0x57, 0x42, 0x69, 0x33, 0xbc, 0x66, 0x58, 0x6e, 0xb8,
0xd0, 0x4c, 0x61, 0xe0, 0x0e, 0xdc, 0xa0, 0x5e, 0xc2, 0x6f, 0x5f, 0x73, 0xa1, 0xaf, 0x31, 0x50,
0xe4, 0x1c, 0xbc, 0x34, 0xb3, 0x91, 0xda, 0x71, 0x3d, 0x70, 0x8d, 0x99, 0x66, 0x66, 0x3f, 0x33,
0x9e, 0x9f, 0x9b, 0x96, 0x73, 0x37, 0xc9, 0x83, 0x00, 0x95, 0x72, 0xfb, 0xb9, 0x67, 0xa0, 0xef,
0xae, 0xef, 0xd2, 0x12, 0x66, 0xcb, 0xc1, 0xb7, 0xf0, 0xff, 0x87, 0x33, 0x24, 0x1f, 0xc3, 0xf1,
0x4e, 0xf6, 0x6c, 0xdb, 0x8b, 0xbd, 0x6d, 0xb8, 0xaf, 0x64, 0x3c, 0xf8, 0xab, 0x01, 0x47, 0xfb,
0x31, 0x92, 0xaf, 0xa0, 0x35, 0xcf, 0x83, 0x3f, 0x50, 0x2b, 0xbf, 0x36, 0x3c, 0x18, 0x79, 0x93,
0xe1, 0x3b, 0x23, 0x1f, 0x4f, 0xad, 0x90, 0x96, 0x06, 0xf2, 0x3b, 0x9c, 0x16, 0xd7, 0xc5, 0x24,
0x9a, 0x5f, 0x81, 0x7d, 0x35, 0x8b, 0xbb, 0xff, 0xf4, 0xdd, 0x85, 0xdc, 0x92, 0x1a, 0x8f, 0x7b,
0x68, 0xe9, 0x89, 0xbe, 0x0b, 0x0d, 0x72, 0x68, 0x4d, 0x73, 0x11, 0x87, 0x28, 0x09, 0x81, 0x43,
0xfb, 0xd2, 0xba, 0x43, 0xd9, 0xdf, 0xe4, 0x09, 0x74, 0xb5, 0x14, 0x51, 0x84, 0x12, 0x43, 0x36,
0xdf, 0x14, 0xaf, 0xb0, 0x57, 0x61, 0xd3, 0x0d, 0xf9, 0x02, 0x1e, 0xe1, 0xed, 0x12, 0xa5, 0x48,
0x30, 0xd5, 0x6c, 0x89, 0x32, 0xc0, 0x54, 0xf3, 0x08, 0x6d, 0xc2, 0x75, 0x7a, 0xba, 0x25, 0x5f,
0x54, 0xdc, 0xe0, 0x37, 0x68, 0xba, 0x73, 0x3e, 0xb8, 0xeb, 0x37, 0xd0, 0x9e, 0xbb, 0x8f, 0x72,
0x23, 0x7d, 0xb7, 0xc5, 0xef, 0xe4, 0x65, 0x95, 0xb4, 0xb2, 0x0c, 0xfe, 0xac, 0xc3, 0xc9, 0xbd,
0xc3, 0x9b, 0x3e, 0xd8, 0xcf, 0x71, 0x95, 0x67, 0x9a, 0x17, 0xff, 0x38, 0xfd, 0x9d, 0x64, 0x7e,
0x31, 0xb8, 0x79, 0xd5, 0xa3, 0x38, 0x9b, 0xf3, 0x78, 0x4f, 0xed, 0xfa, 0xaf, 0xef, 0x98, 0x1d,
0xf5, 0x33, 0x38, 0x5d, 0x70, 0x11, 0xe7, 0x12, 0x0b, 0xf9, 0x0d, 0x8a, 0xe8, 0x8d, 0xb6, 0xdd,
0xd8, 0xa0, 0xa4, 0xe0, 0xac, 0xe1, 0xb5, 0x65, 0xc8, 0x0c, 0xce, 0xb5, 0xe4, 0xa9, 0x12, 0x26,
0xb5, 0x07, 0xbd, 0x87, 0xd6, 0xfb, 0x7e, 0xa5, 0xfa, 0xee, 0x7e, 0x91, 0x67, 0x70, 0x6a, 0xde,
0xcf, 0x2c, 0xd7, 0xfb, 0xd6, 0x86, 0xdb, 0xb6, 0xe0, 0x76, 0x1c, 0x83, 0x13, 0x38, 0xbe, 0x33,
0xad, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0xe7, 0xaf, 0xdd, 0x86, 0x94, 0x07, 0x00, 0x00,
}
......@@ -20,10 +20,8 @@ message Config {
// URL of the CQ status app to push updates to.
optional string cq_status_url = 4;
// When true, hash of the commit is not posted by CQ. This is used for
// projects using gnumbd as latter publishes actual hash later. Default value
// is false.
optional bool hide_ref_in_committed_msg = 5;
// DO NOT USE. Kept here for validator error messages.
optional bool hide_ref_in_committed_msg = 5 [deprecated = true];
// Delay between commit bursts in seconds. Default value is 480.
optional int32 commit_burst_delay = 6;
......@@ -39,8 +37,7 @@ message Config {
// Configuration options for Rietveld code review.
optional Rietveld rietveld = 9;
// EXPERIMENTAL! Configuration options for Gerrit code review.
// TODO(tandrii): update this doc (GERRIT).
// Configuration options for Gerrit code review.
optional Gerrit gerrit = 15;
// This can be used to override the Git repository URL used to checkout and
......@@ -53,8 +50,8 @@ message Config {
// that use gnumbd where CQ should commit into a pending ref.
optional string target_ref = 11;
// Deprecated. URL of the SVN repository. We are deprecating SVN support.
optional string svn_repo_url = 12;
// DO NOT USE. Kept here for validator error messages.
optional string svn_repo_url = 12 [deprecated = true];
// If present, the CQ will refrain from processing any commits whose start
// time is >= this time.
......@@ -67,23 +64,14 @@ message Rietveld {
// Required. URL of the codereview site.
optional string url = 1;
// List of regular expressions used to check if CL's base URL should be
// processed by this CQ. This may be useful if a single branch has multiple
// sub-directories that are handled by different CQs. When no regular
// expressions are specified, the regular expression '.*', which matches any
// directory, is used.
// DO NOT USE. Kept here for validator error messages.
repeated string project_bases = 2;
}
// Gerrit CQ is EXPERIMENTAL! See http://crbug.com/493899 for more info.
//
// Unlike Rietveld, Gerrit doesn't need a separate url.
// Instead, the git_repo_url must be specified on the Gerrit instance,
// and CQ will deduce Gerrit url from it.
//
// TODO(tandrii): support Rietveld and Gerrit at the same time.
// This basically requires to start two CQ instances, instead of one.
//
// For example, if https://chromium.googlesource.com/infra/infra.git is your
// repo url provided in `git_repo_url` above, then
// https://chromium-review.googlesource.com/#/admin/projects/infra/infra should
......@@ -95,13 +83,20 @@ message Rietveld {
// see it. This will come handy to enable and customize the CQ-related workflows
// for your project.
message Gerrit {
// Optional. If set, tells CQ vote on a given label to mark result of CQ run.
// The vote is either -1 if failed or 1 on success, and will be given on
// Optional. If set, tells CQ to vote on a given label to mark result of CQ
// run. The vote is either -1 if failed or 1 on success, and will be given on
// non-dry runs only.
// This vote can then be used in Gerrit's rule for submitting issues, so as to
// require CQ run. CQ will attempt to submit issue only after setting this
// label.
optional string cq_verified_label = 1;
// Optional and only allowed if cq_verified_label is set. Default: False.
// If set, tells CQ to vote on the Verified label even on dry run.
// This is useful if CQ has no presubmit builders, as dry run would be
// totally equivalent to full run, except that CQ won't try to actually submit
// the code.
optional bool dry_run_sets_cq_verified_label = 2;
}
// Verifiers are various types of checks that a Commit Queue performs on a CL.
......@@ -111,7 +106,9 @@ message Gerrit {
message Verifiers {
// This verifier is used to ensure that an LGTM was posted to the code review
// site from a valid project committer.
// This verifier is not supported with Gerrit.
// It is ignored in case of Gerrit, and you should not declare it unless you
// use both Gerrit and Rietveld for codereview. Unlike Rietveld, Gerrit has
// its own ACL system which should be set up by project admins.
optional ReviewerLgtmVerifier reviewer_lgtm = 1;
// This verifier is used to check tree status before committing a CL. If the
......
......@@ -26,7 +26,7 @@ _sym_db = _symbol_database.Default()
DESCRIPTOR = _descriptor.FileDescriptor(
name='cq.proto',
package='',
serialized_pb=_b('\n\x08\x63q.proto\"\xe3\x02\n\x06\x43onfig\x12\x0f\n\x07version\x18\x01 \x01(\x05\x12\x0f\n\x07\x63q_name\x18\x02 \x01(\t\x12\x1d\n\tverifiers\x18\x03 \x01(\x0b\x32\n.Verifiers\x12\x15\n\rcq_status_url\x18\x04 \x01(\t\x12!\n\x19hide_ref_in_committed_msg\x18\x05 \x01(\x08\x12\x1a\n\x12\x63ommit_burst_delay\x18\x06 \x01(\x05\x12\x18\n\x10max_commit_burst\x18\x07 \x01(\x05\x12\x15\n\rin_production\x18\x08 \x01(\x08\x12\x1b\n\x08rietveld\x18\t \x01(\x0b\x32\t.Rietveld\x12\x17\n\x06gerrit\x18\x0f \x01(\x0b\x32\x07.Gerrit\x12\x14\n\x0cgit_repo_url\x18\n \x01(\t\x12\x12\n\ntarget_ref\x18\x0b \x01(\t\x12\x14\n\x0csvn_repo_url\x18\x0c \x01(\t\x12\x1b\n\x13\x64raining_start_time\x18\r \x01(\t\".\n\x08Rietveld\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x15\n\rproject_bases\x18\x02 \x03(\t\"#\n\x06Gerrit\x12\x19\n\x11\x63q_verified_label\x18\x01 \x01(\t\"\xf3\x06\n\tVerifiers\x12\x36\n\rreviewer_lgtm\x18\x01 \x01(\x0b\x32\x1f.Verifiers.ReviewerLgtmVerifier\x12\x36\n\x0btree_status\x18\x02 \x01(\x0b\x32!.Verifiers.TreeStatusLgtmVerifier\x12*\n\x07try_job\x18\x03 \x01(\x0b\x32\x19.Verifiers.TryJobVerifier\x12,\n\x08sign_cla\x18\x04 \x01(\x0b\x32\x1a.Verifiers.SignCLAVerifier\x1aw\n\x14ReviewerLgtmVerifier\x12\x16\n\x0e\x63ommitter_list\x18\x01 \x01(\t\x12\x15\n\rmax_wait_secs\x18\x02 \x01(\x05\x12\x13\n\x0bno_lgtm_msg\x18\x03 \x01(\t\x12\x1b\n\x13\x64ry_run_access_list\x18\x04 \x01(\t\x1a\x31\n\x16TreeStatusLgtmVerifier\x12\x17\n\x0ftree_status_url\x18\x01 \x01(\t\x1a\xdc\x03\n\x0eTryJobVerifier\x12\x31\n\x07\x62uckets\x18\x01 \x03(\x0b\x32 .Verifiers.TryJobVerifier.Bucket\x12I\n\x14try_job_retry_config\x18\x02 \x01(\x0b\x32+.Verifiers.TryJobVerifier.TryJobRetryConfig\x1aL\n\x07\x42uilder\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0ctriggered_by\x18\x02 \x01(\t\x12\x1d\n\x15\x65xperiment_percentage\x18\x04 \x01(\x02\x1aK\n\x06\x42ucket\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x33\n\x08\x62uilders\x18\x02 \x03(\x0b\x32!.Verifiers.TryJobVerifier.Builder\x1a\xb0\x01\n\x11TryJobRetryConfig\x12\x1b\n\x13try_job_retry_quota\x18\x01 \x01(\x05\x12\x1a\n\x12global_retry_quota\x18\x02 \x01(\x05\x12\x1c\n\x14\x66\x61ilure_retry_weight\x18\x03 \x01(\x05\x12&\n\x1etransient_failure_retry_weight\x18\x04 \x01(\x05\x12\x1c\n\x14timeout_retry_weight\x18\x05 \x01(\x05\x1a\x11\n\x0fSignCLAVerifier')
serialized_pb=_b('\n\x08\x63q.proto\"\xeb\x02\n\x06\x43onfig\x12\x0f\n\x07version\x18\x01 \x01(\x05\x12\x0f\n\x07\x63q_name\x18\x02 \x01(\t\x12\x1d\n\tverifiers\x18\x03 \x01(\x0b\x32\n.Verifiers\x12\x15\n\rcq_status_url\x18\x04 \x01(\t\x12%\n\x19hide_ref_in_committed_msg\x18\x05 \x01(\x08\x42\x02\x18\x01\x12\x1a\n\x12\x63ommit_burst_delay\x18\x06 \x01(\x05\x12\x18\n\x10max_commit_burst\x18\x07 \x01(\x05\x12\x15\n\rin_production\x18\x08 \x01(\x08\x12\x1b\n\x08rietveld\x18\t \x01(\x0b\x32\t.Rietveld\x12\x17\n\x06gerrit\x18\x0f \x01(\x0b\x32\x07.Gerrit\x12\x14\n\x0cgit_repo_url\x18\n \x01(\t\x12\x12\n\ntarget_ref\x18\x0b \x01(\t\x12\x18\n\x0csvn_repo_url\x18\x0c \x01(\tB\x02\x18\x01\x12\x1b\n\x13\x64raining_start_time\x18\r \x01(\t\".\n\x08Rietveld\x12\x0b\n\x03url\x18\x01 \x01(\t\x12\x15\n\rproject_bases\x18\x02 \x03(\t\"K\n\x06Gerrit\x12\x19\n\x11\x63q_verified_label\x18\x01 \x01(\t\x12&\n\x1e\x64ry_run_sets_cq_verified_label\x18\x02 \x01(\x08\"\xf3\x06\n\tVerifiers\x12\x36\n\rreviewer_lgtm\x18\x01 \x01(\x0b\x32\x1f.Verifiers.ReviewerLgtmVerifier\x12\x36\n\x0btree_status\x18\x02 \x01(\x0b\x32!.Verifiers.TreeStatusLgtmVerifier\x12*\n\x07try_job\x18\x03 \x01(\x0b\x32\x19.Verifiers.TryJobVerifier\x12,\n\x08sign_cla\x18\x04 \x01(\x0b\x32\x1a.Verifiers.SignCLAVerifier\x1aw\n\x14ReviewerLgtmVerifier\x12\x16\n\x0e\x63ommitter_list\x18\x01 \x01(\t\x12\x15\n\rmax_wait_secs\x18\x02 \x01(\x05\x12\x13\n\x0bno_lgtm_msg\x18\x03 \x01(\t\x12\x1b\n\x13\x64ry_run_access_list\x18\x04 \x01(\t\x1a\x31\n\x16TreeStatusLgtmVerifier\x12\x17\n\x0ftree_status_url\x18\x01 \x01(\t\x1a\xdc\x03\n\x0eTryJobVerifier\x12\x31\n\x07\x62uckets\x18\x01 \x03(\x0b\x32 .Verifiers.TryJobVerifier.Bucket\x12I\n\x14try_job_retry_config\x18\x02 \x01(\x0b\x32+.Verifiers.TryJobVerifier.TryJobRetryConfig\x1aL\n\x07\x42uilder\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0ctriggered_by\x18\x02 \x01(\t\x12\x1d\n\x15\x65xperiment_percentage\x18\x04 \x01(\x02\x1aK\n\x06\x42ucket\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x33\n\x08\x62uilders\x18\x02 \x03(\x0b\x32!.Verifiers.TryJobVerifier.Builder\x1a\xb0\x01\n\x11TryJobRetryConfig\x12\x1b\n\x13try_job_retry_quota\x18\x01 \x01(\x05\x12\x1a\n\x12global_retry_quota\x18\x02 \x01(\x05\x12\x1c\n\x14\x66\x61ilure_retry_weight\x18\x03 \x01(\x05\x12&\n\x1etransient_failure_retry_weight\x18\x04 \x01(\x05\x12\x1c\n\x14timeout_retry_weight\x18\x05 \x01(\x05\x1a\x11\n\x0fSignCLAVerifier')
)
_sym_db.RegisterFileDescriptor(DESCRIPTOR)
......@@ -74,7 +74,7 @@ _CONFIG = _descriptor.Descriptor(
has_default_value=False, default_value=False,
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
options=None),
options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
_descriptor.FieldDescriptor(
name='commit_burst_delay', full_name='Config.commit_burst_delay', index=5,
number=6, type=5, cpp_type=1, label=1,
......@@ -130,7 +130,7 @@ _CONFIG = _descriptor.Descriptor(
has_default_value=False, default_value=_b("").decode('utf-8'),
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
options=None),
options=_descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))),
_descriptor.FieldDescriptor(
name='draining_start_time', full_name='Config.draining_start_time', index=13,
number=13, type=9, cpp_type=9, label=1,
......@@ -150,7 +150,7 @@ _CONFIG = _descriptor.Descriptor(
oneofs=[
],
serialized_start=13,
serialized_end=368,
serialized_end=376,
)
......@@ -186,8 +186,8 @@ _RIETVELD = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=370,
serialized_end=416,
serialized_start=378,
serialized_end=424,
)
......@@ -205,6 +205,13 @@ _GERRIT = _descriptor.Descriptor(
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
options=None),
_descriptor.FieldDescriptor(
name='dry_run_sets_cq_verified_label', full_name='Gerrit.dry_run_sets_cq_verified_label', index=1,
number=2, type=8, cpp_type=7, label=1,
has_default_value=False, default_value=False,
message_type=None, enum_type=None, containing_type=None,
is_extension=False, extension_scope=None,
options=None),
],
extensions=[
],
......@@ -216,8 +223,8 @@ _GERRIT = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=418,
serialized_end=453,
serialized_start=426,
serialized_end=501,
)
......@@ -267,8 +274,8 @@ _VERIFIERS_REVIEWERLGTMVERIFIER = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=671,
serialized_end=790,
serialized_start=719,
serialized_end=838,
)
_VERIFIERS_TREESTATUSLGTMVERIFIER = _descriptor.Descriptor(
......@@ -296,8 +303,8 @@ _VERIFIERS_TREESTATUSLGTMVERIFIER = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=792,
serialized_end=841,
serialized_start=840,
serialized_end=889,
)
_VERIFIERS_TRYJOBVERIFIER_BUILDER = _descriptor.Descriptor(
......@@ -339,8 +346,8 @@ _VERIFIERS_TRYJOBVERIFIER_BUILDER = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=988,
serialized_end=1064,
serialized_start=1036,
serialized_end=1112,
)
_VERIFIERS_TRYJOBVERIFIER_BUCKET = _descriptor.Descriptor(
......@@ -375,8 +382,8 @@ _VERIFIERS_TRYJOBVERIFIER_BUCKET = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=1066,
serialized_end=1141,
serialized_start=1114,
serialized_end=1189,
)
_VERIFIERS_TRYJOBVERIFIER_TRYJOBRETRYCONFIG = _descriptor.Descriptor(
......@@ -432,8 +439,8 @@ _VERIFIERS_TRYJOBVERIFIER_TRYJOBRETRYCONFIG = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=1144,
serialized_end=1320,
serialized_start=1192,
serialized_end=1368,
)
_VERIFIERS_TRYJOBVERIFIER = _descriptor.Descriptor(
......@@ -468,8 +475,8 @@ _VERIFIERS_TRYJOBVERIFIER = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=844,
serialized_end=1320,
serialized_start=892,
serialized_end=1368,
)
_VERIFIERS_SIGNCLAVERIFIER = _descriptor.Descriptor(
......@@ -490,8 +497,8 @@ _VERIFIERS_SIGNCLAVERIFIER = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=1322,
serialized_end=1339,
serialized_start=1370,
serialized_end=1387,
)
_VERIFIERS = _descriptor.Descriptor(
......@@ -540,8 +547,8 @@ _VERIFIERS = _descriptor.Descriptor(
extension_ranges=[],
oneofs=[
],
serialized_start=456,
serialized_end=1339,
serialized_start=504,
serialized_end=1387,
)
_CONFIG.fields_by_name['verifiers'].message_type = _VERIFIERS
......@@ -651,4 +658,8 @@ _sym_db.RegisterMessage(Verifiers.TryJobVerifier.TryJobRetryConfig)
_sym_db.RegisterMessage(Verifiers.SignCLAVerifier)
_CONFIG.fields_by_name['hide_ref_in_committed_msg'].has_options = True
_CONFIG.fields_by_name['hide_ref_in_committed_msg']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
_CONFIG.fields_by_name['svn_repo_url'].has_options = True
_CONFIG.fields_by_name['svn_repo_url']._options = _descriptor._ParseOptions(descriptor_pb2.FieldOptions(), _b('\030\001'))
# @@protoc_insertion_point(module_scope)
version: 1
cq_name: "infra"
cq_status_url: "https://chromium-cq-status.appspot.com"
commit_burst_delay: 600
max_commit_burst: 10
in_production: false
git_repo_url: "http://chromium.googlesource.com/infra/infra.git"
target_ref: "refs/pending/heads/master"
rietveld {
url: "https://codereview.chromium.org"
}
gerrit {
cq_verified_label: "Commit-Queue-Verified"
}
verifiers {
# This verifier is not supported in Gerrit, and is just ignored.
reviewer_lgtm: {
committer_list: "project-chromium-committers"
dry_run_access_list: "project-chromium-tryjob-access"
max_wait_secs: 600
no_lgtm_msg: "LGTM is missing"
}
tree_status: {
tree_status_url: "https://infra-status.appspot.com"
}
try_job {
buckets {
name: "tryserver.blink"
builders { name: "android_blink_compile_dbg" }
builders { name: "android_blink_compile_rel" }
builders { name: "win_blink_rel" }
builders {
name: "win_blink_rel_triggered"
triggered_by: "win_blink_rel"
}
}
buckets {
name: "tryserver.chromium.linux"
builders {
name: "android_arm64_dbg_recipe"
}
builders {
name: "linux_chromium_rel_ng"
experiment_percentage: 10
}
}
buckets {
name: "tryserver.chromium.mac"
builders {
name: "ios_dbg_simulator_ninja"
experiment_percentage: 100
}
}
try_job_retry_config {
try_job_retry_quota: 10
global_retry_quota: 11
failure_retry_weight: 12
transient_failure_retry_weight: 13
}
}
}
version: 1
cq_name: "infra"
cq_status_url: "https://chromium-cq-status.appspot.com"
hide_ref_in_committed_msg: true
commit_burst_delay: 600
max_commit_burst: 10
in_production: false
......@@ -10,6 +9,7 @@ target_ref: "refs/pending/heads/master"
gerrit {
cq_verified_label: "Commit-Queue-Verified"
dry_run_sets_cq_verified_label: true
}
verifiers {
......
version: 1
cq_name: "infra"
cq_status_url: "https://chromium-cq-status.appspot.com"
hide_ref_in_committed_msg: true
commit_burst_delay: 600
max_commit_burst: 10
in_production: false
......@@ -10,7 +9,6 @@ target_ref: "refs/pending/heads/master"
rietveld {
url: "https://codereview.chromium.org"
project_bases: "https://chromium.googlesource.com/infra/infra.git@master"
}
verifiers {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment