blob: 65866385b3736b8a6a0f702bb79927d84d92c2bd [file] [log] [blame]
// Copyright 2020 The LUCI Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.33.0
// protoc v5.26.1
// source: go.chromium.org/luci/cv/internal/run/storage.proto
package run
import (
v2 "go.chromium.org/luci/cv/api/config/v2"
gerrit "go.chromium.org/luci/cv/internal/gerrit"
eventpb "go.chromium.org/luci/cv/internal/run/eventpb"
tryjob "go.chromium.org/luci/cv/internal/tryjob"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// Status describes the status of a CV Run.
type Status int32
const (
// Unspecified status.
Status_STATUS_UNSPECIFIED Status = 0
// Run is pending to start.
//
// It is either because Run Manager hasn't processed the StartEvent yet or
// the RunOwner has exhausted all the quota and waiting for new quota to
// be available.
Status_PENDING Status = 1
// Run is running.
Status_RUNNING Status = 2
// Run is waiting for submission.
//
// Run is in this status if one of the following scenario is true:
// 1. Tree is closed at the time Run attempts to submit.
// 2. There is another Run in the same LUCI Project that is currently
// submitting.
// 3. The submission is rate limited according to the submit option in
// Project Config.
//
// This status is cancellable.
Status_WAITING_FOR_SUBMISSION Status = 4
// Run is submitting.
//
// A Run can't be cancelled while submitting. A Run may transition from
// this status to either `WAITING_FOR_SUBMISSION` status or a non-cancelled
// terminal status.
Status_SUBMITTING Status = 5
// ENDED_MASK can be used as a bitmask to check if a Run has ended.
// This MUST NOT be used as the status of a Run.
Status_ENDED_MASK Status = 64
// Run ends successfully.
Status_SUCCEEDED Status = 65
// Run ends unsuccessfully.
Status_FAILED Status = 66
// Run is cancelled.
Status_CANCELLED Status = 67
)
// Enum value maps for Status.
var (
Status_name = map[int32]string{
0: "STATUS_UNSPECIFIED",
1: "PENDING",
2: "RUNNING",
4: "WAITING_FOR_SUBMISSION",
5: "SUBMITTING",
64: "ENDED_MASK",
65: "SUCCEEDED",
66: "FAILED",
67: "CANCELLED",
}
Status_value = map[string]int32{
"STATUS_UNSPECIFIED": 0,
"PENDING": 1,
"RUNNING": 2,
"WAITING_FOR_SUBMISSION": 4,
"SUBMITTING": 5,
"ENDED_MASK": 64,
"SUCCEEDED": 65,
"FAILED": 66,
"CANCELLED": 67,
}
)
func (x Status) Enum() *Status {
p := new(Status)
*p = x
return p
}
func (x Status) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Status) Descriptor() protoreflect.EnumDescriptor {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_enumTypes[0].Descriptor()
}
func (Status) Type() protoreflect.EnumType {
return &file_go_chromium_org_luci_cv_internal_run_storage_proto_enumTypes[0]
}
func (x Status) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Status.Descriptor instead.
func (Status) EnumDescriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{0}
}
// Trigger describes who/how CV was triggered on a specific CL.
type Trigger struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Time *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=time,proto3" json:"time,omitempty"`
// Mode is string value of run.Mode.
Mode string `protobuf:"bytes,2,opt,name=mode,proto3" json:"mode,omitempty"`
// ModeDefinition is the definition of the mode in case `mode` is not standard
// modes supported by LUCI CV (e.g. DRY_RUN, FULL_RUN, NEW_PATCHSET_RUN) but
// is provided through project configuration.
//
// This field is empty if `mode` is standard mode in LUCI CV.
ModeDefinition *v2.Mode `protobuf:"bytes,6,opt,name=mode_definition,json=modeDefinition,proto3" json:"mode_definition,omitempty"`
// Triggering user email. Always known for Runs created since July 2021.
//
// Gerrit doesn't guarantee that every user has set their preferred email,
// but LUCI ACLs are based entirely on user emails. Thus, Project Manager will
// refuse starting Runs for users without the email.
Email string `protobuf:"bytes,3,opt,name=email,proto3" json:"email,omitempty"`
// Gerrit account ID. Always known.
GerritAccountId int64 `protobuf:"varint,4,opt,name=gerrit_account_id,json=gerritAccountId,proto3" json:"gerrit_account_id,omitempty"`
}
func (x *Trigger) Reset() {
*x = Trigger{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Trigger) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Trigger) ProtoMessage() {}
func (x *Trigger) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Trigger.ProtoReflect.Descriptor instead.
func (*Trigger) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{0}
}
func (x *Trigger) GetTime() *timestamppb.Timestamp {
if x != nil {
return x.Time
}
return nil
}
func (x *Trigger) GetMode() string {
if x != nil {
return x.Mode
}
return ""
}
func (x *Trigger) GetModeDefinition() *v2.Mode {
if x != nil {
return x.ModeDefinition
}
return nil
}
func (x *Trigger) GetEmail() string {
if x != nil {
return x.Email
}
return ""
}
func (x *Trigger) GetGerritAccountId() int64 {
if x != nil {
return x.GerritAccountId
}
return 0
}
// Triggers describes the triggers associated with a CL.
type Triggers struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// CQVoteTrigger is the trigger that corresponds to a vote on the
// `Commit-Queue` Gerrit label.
CqVoteTrigger *Trigger `protobuf:"bytes,1,opt,name=cq_vote_trigger,json=cqVoteTrigger,proto3" json:"cq_vote_trigger,omitempty"`
// NewPatchsetRunTrigger is the trigger that is created automatically by
// uploading a new patchset.
//
// This is only populated if the CL matches a config group that allows this.
NewPatchsetRunTrigger *Trigger `protobuf:"bytes,2,opt,name=new_patchset_run_trigger,json=newPatchsetRunTrigger,proto3" json:"new_patchset_run_trigger,omitempty"`
}
func (x *Triggers) Reset() {
*x = Triggers{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Triggers) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Triggers) ProtoMessage() {}
func (x *Triggers) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Triggers.ProtoReflect.Descriptor instead.
func (*Triggers) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{1}
}
func (x *Triggers) GetCqVoteTrigger() *Trigger {
if x != nil {
return x.CqVoteTrigger
}
return nil
}
func (x *Triggers) GetNewPatchsetRunTrigger() *Trigger {
if x != nil {
return x.NewPatchsetRunTrigger
}
return nil
}
// Submission describes the state of Run submission.
type Submission struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The deadline of this submission.
//
// If the deadline is not set or has already expired, a RunManager task
// can claim the exclusive privilege by setting the deadline to a future
// timestamp (generally, end of task deadline).
Deadline *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=deadline,proto3" json:"deadline,omitempty"`
// ID of the task that executes this submission.
TaskId string `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
// IDs of all CLs that should be submitted in this submission.
//
// Must be ordered in submission order.
Cls []int64 `protobuf:"varint,3,rep,packed,name=cls,proto3" json:"cls,omitempty"`
// IDs of all CLs that have been submitted successfully already.
SubmittedCls []int64 `protobuf:"varint,4,rep,packed,name=submitted_cls,json=submittedCls,proto3" json:"submitted_cls,omitempty"`
// IDs of all CLs that fails to submit if any.
//
// CLs that are neither in this list nor in the `submitted_cls` should be
// treated as if CV has never attempted to submit them.
//
// This could be empty even when the entire submission fails, which would be
// typically caused by faulty infrastructure (e.g. Task Queue not executing
// a Run Manager task before the whole submission timeout is reached).
FailedCls []int64 `protobuf:"varint,5,rep,packed,name=failed_cls,json=failedCls,proto3" json:"failed_cls,omitempty"`
// If True, Tree is currently in open state.
TreeOpen bool `protobuf:"varint,10,opt,name=tree_open,json=treeOpen,proto3" json:"tree_open,omitempty"`
// The timestamp when the last attempt to fetch the Tree status occurred.
LastTreeCheckTime *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=last_tree_check_time,json=lastTreeCheckTime,proto3" json:"last_tree_check_time,omitempty"`
// The timestamp when an attempt to fetch the Tree status first resulted in
// an error.
TreeErrorSince *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=tree_error_since,json=treeErrorSince,proto3" json:"tree_error_since,omitempty"`
}
func (x *Submission) Reset() {
*x = Submission{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Submission) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Submission) ProtoMessage() {}
func (x *Submission) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Submission.ProtoReflect.Descriptor instead.
func (*Submission) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{2}
}
func (x *Submission) GetDeadline() *timestamppb.Timestamp {
if x != nil {
return x.Deadline
}
return nil
}
func (x *Submission) GetTaskId() string {
if x != nil {
return x.TaskId
}
return ""
}
func (x *Submission) GetCls() []int64 {
if x != nil {
return x.Cls
}
return nil
}
func (x *Submission) GetSubmittedCls() []int64 {
if x != nil {
return x.SubmittedCls
}
return nil
}
func (x *Submission) GetFailedCls() []int64 {
if x != nil {
return x.FailedCls
}
return nil
}
func (x *Submission) GetTreeOpen() bool {
if x != nil {
return x.TreeOpen
}
return false
}
func (x *Submission) GetLastTreeCheckTime() *timestamppb.Timestamp {
if x != nil {
return x.LastTreeCheckTime
}
return nil
}
func (x *Submission) GetTreeErrorSince() *timestamppb.Timestamp {
if x != nil {
return x.TreeErrorSince
}
return nil
}
// Options are Run-specific additions on top of LUCI project config.
type Options struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// If true, submitting the Run isn't blocked on open tree.
//
// If false (default), respects project configuration.
SkipTreeChecks bool `protobuf:"varint,1,opt,name=skip_tree_checks,json=skipTreeChecks,proto3" json:"skip_tree_checks,omitempty"`
// If true, `builders.equivalent_to{...}` sections are ignored when triggering
// tryjobs.
//
// If false (default), respects project configuration.
SkipEquivalentBuilders bool `protobuf:"varint,2,opt,name=skip_equivalent_builders,json=skipEquivalentBuilders,proto3" json:"skip_equivalent_builders,omitempty"`
// If true, no longer useful tryjobs won't be cancelled.
//
// If false (default), respects project configuration.
AvoidCancellingTryjobs bool `protobuf:"varint,3,opt,name=avoid_cancelling_tryjobs,json=avoidCancellingTryjobs,proto3" json:"avoid_cancelling_tryjobs,omitempty"`
// If true, no tryjobs will be triggered except "presubmit" regardless of
// project configuration.
//
// "presubmit" builders are legacy which are currently configured with
// "disable_reuse: true" in project config. To skip triggering them,
// skip_presubmit must be set to true.
// TODO(https://crbug.com/950074): ignore.
//
// If false (default), respects project configuration.
SkipTryjobs bool `protobuf:"varint,4,opt,name=skip_tryjobs,json=skipTryjobs,proto3" json:"skip_tryjobs,omitempty"`
// Deprecated per https://crbug.com/950074.
// See skip_tryjobs doc.
SkipPresubmit bool `protobuf:"varint,5,opt,name=skip_presubmit,json=skipPresubmit,proto3" json:"skip_presubmit,omitempty"`
// Contains the directives to include specific builder in the Run.
//
// Its elements are strings of the form:
// project/bucket:builder1,builder2;project2/bucket:builder3
//
// Note that there may be duplication in the directives, it's up to the
// consumer of this information to handle it.
//
// Mutually exclusive with `overridden_tryjobs` option.
// This option is ignored if `skip_tryjobs` is true.
IncludedTryjobs []string `protobuf:"bytes,6,rep,name=included_tryjobs,json=includedTryjobs,proto3" json:"included_tryjobs,omitempty"`
// Overrides all the Tryjobs triggered for this Run regardless of Project
// configuration.
//
// Its elements are strings of the form:
// project/bucket:builder1,builder2;project2/bucket:builder3
//
// Note that there may be duplication in the directives, it's up to the
// consumer of this information to handle it.
//
// Mutually exclusive with `included_tryjobs` option.
// This option is ignored if `skip_tryjobs` is true.
OverriddenTryjobs []string `protobuf:"bytes,8,rep,name=overridden_tryjobs,json=overriddenTryjobs,proto3" json:"overridden_tryjobs,omitempty"`
// Contains the custom Tryjob tags that should be added when launching
// Tryjobs for this Run.
//
// Each element SHOULD be in the format of "$tag_key:$tag_value" and the
// character set for tag key is [a-z0-9_\-].
CustomTryjobTags []string `protobuf:"bytes,7,rep,name=custom_tryjob_tags,json=customTryjobTags,proto3" json:"custom_tryjob_tags,omitempty"`
}
func (x *Options) Reset() {
*x = Options{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Options) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Options) ProtoMessage() {}
func (x *Options) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Options.ProtoReflect.Descriptor instead.
func (*Options) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{3}
}
func (x *Options) GetSkipTreeChecks() bool {
if x != nil {
return x.SkipTreeChecks
}
return false
}
func (x *Options) GetSkipEquivalentBuilders() bool {
if x != nil {
return x.SkipEquivalentBuilders
}
return false
}
func (x *Options) GetAvoidCancellingTryjobs() bool {
if x != nil {
return x.AvoidCancellingTryjobs
}
return false
}
func (x *Options) GetSkipTryjobs() bool {
if x != nil {
return x.SkipTryjobs
}
return false
}
func (x *Options) GetSkipPresubmit() bool {
if x != nil {
return x.SkipPresubmit
}
return false
}
func (x *Options) GetIncludedTryjobs() []string {
if x != nil {
return x.IncludedTryjobs
}
return nil
}
func (x *Options) GetOverriddenTryjobs() []string {
if x != nil {
return x.OverriddenTryjobs
}
return nil
}
func (x *Options) GetCustomTryjobTags() []string {
if x != nil {
return x.CustomTryjobTags
}
return nil
}
// LogEntries contains 1+ LogEntry ordered from logically oldest to newest.
type LogEntries struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Entries []*LogEntry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"`
}
func (x *LogEntries) Reset() {
*x = LogEntries{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntries) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntries) ProtoMessage() {}
func (x *LogEntries) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntries.ProtoReflect.Descriptor instead.
func (*LogEntries) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{4}
}
func (x *LogEntries) GetEntries() []*LogEntry {
if x != nil {
return x.Entries
}
return nil
}
// LogEntry records what changed in a Run.
type LogEntry struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Time is when something was changed.
Time *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=time,proto3" json:"time,omitempty"`
// Types that are assignable to Kind:
//
// *LogEntry_Created_
// *LogEntry_Started_
// *LogEntry_ConfigChanged_
// *LogEntry_TryjobsRequirementUpdated_
// *LogEntry_TryjobsUpdated_
// *LogEntry_Info_
// *LogEntry_TreeChecked_
// *LogEntry_Waitlisted_
// *LogEntry_AcquiredSubmitQueue_
// *LogEntry_ReleasedSubmitQueue_
// *LogEntry_ClSubmitted
// *LogEntry_SubmissionFailure_
// *LogEntry_RunEnded_
Kind isLogEntry_Kind `protobuf_oneof:"kind"`
}
func (x *LogEntry) Reset() {
*x = LogEntry{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry) ProtoMessage() {}
func (x *LogEntry) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry.ProtoReflect.Descriptor instead.
func (*LogEntry) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5}
}
func (x *LogEntry) GetTime() *timestamppb.Timestamp {
if x != nil {
return x.Time
}
return nil
}
func (m *LogEntry) GetKind() isLogEntry_Kind {
if m != nil {
return m.Kind
}
return nil
}
func (x *LogEntry) GetCreated() *LogEntry_Created {
if x, ok := x.GetKind().(*LogEntry_Created_); ok {
return x.Created
}
return nil
}
func (x *LogEntry) GetStarted() *LogEntry_Started {
if x, ok := x.GetKind().(*LogEntry_Started_); ok {
return x.Started
}
return nil
}
func (x *LogEntry) GetConfigChanged() *LogEntry_ConfigChanged {
if x, ok := x.GetKind().(*LogEntry_ConfigChanged_); ok {
return x.ConfigChanged
}
return nil
}
func (x *LogEntry) GetTryjobsRequirementUpdated() *LogEntry_TryjobsRequirementUpdated {
if x, ok := x.GetKind().(*LogEntry_TryjobsRequirementUpdated_); ok {
return x.TryjobsRequirementUpdated
}
return nil
}
func (x *LogEntry) GetTryjobsUpdated() *LogEntry_TryjobsUpdated {
if x, ok := x.GetKind().(*LogEntry_TryjobsUpdated_); ok {
return x.TryjobsUpdated
}
return nil
}
func (x *LogEntry) GetInfo() *LogEntry_Info {
if x, ok := x.GetKind().(*LogEntry_Info_); ok {
return x.Info
}
return nil
}
func (x *LogEntry) GetTreeChecked() *LogEntry_TreeChecked {
if x, ok := x.GetKind().(*LogEntry_TreeChecked_); ok {
return x.TreeChecked
}
return nil
}
func (x *LogEntry) GetWaitlisted() *LogEntry_Waitlisted {
if x, ok := x.GetKind().(*LogEntry_Waitlisted_); ok {
return x.Waitlisted
}
return nil
}
func (x *LogEntry) GetAcquiredSubmitQueue() *LogEntry_AcquiredSubmitQueue {
if x, ok := x.GetKind().(*LogEntry_AcquiredSubmitQueue_); ok {
return x.AcquiredSubmitQueue
}
return nil
}
func (x *LogEntry) GetReleasedSubmitQueue() *LogEntry_ReleasedSubmitQueue {
if x, ok := x.GetKind().(*LogEntry_ReleasedSubmitQueue_); ok {
return x.ReleasedSubmitQueue
}
return nil
}
func (x *LogEntry) GetClSubmitted() *LogEntry_CLSubmitted {
if x, ok := x.GetKind().(*LogEntry_ClSubmitted); ok {
return x.ClSubmitted
}
return nil
}
func (x *LogEntry) GetSubmissionFailure() *LogEntry_SubmissionFailure {
if x, ok := x.GetKind().(*LogEntry_SubmissionFailure_); ok {
return x.SubmissionFailure
}
return nil
}
func (x *LogEntry) GetRunEnded() *LogEntry_RunEnded {
if x, ok := x.GetKind().(*LogEntry_RunEnded_); ok {
return x.RunEnded
}
return nil
}
type isLogEntry_Kind interface {
isLogEntry_Kind()
}
type LogEntry_Created_ struct {
// Run was created.
Created *LogEntry_Created `protobuf:"bytes,2,opt,name=created,proto3,oneof"`
}
type LogEntry_Started_ struct {
// Run was started.
Started *LogEntry_Started `protobuf:"bytes,6,opt,name=started,proto3,oneof"`
}
type LogEntry_ConfigChanged_ struct {
// Run updated to a new project config version.
ConfigChanged *LogEntry_ConfigChanged `protobuf:"bytes,3,opt,name=config_changed,json=configChanged,proto3,oneof"`
}
type LogEntry_TryjobsRequirementUpdated_ struct {
// Tryjobs requirement was (re-)computed.
TryjobsRequirementUpdated *LogEntry_TryjobsRequirementUpdated `protobuf:"bytes,4,opt,name=tryjobs_requirement_updated,json=tryjobsRequirementUpdated,proto3,oneof"`
}
type LogEntry_TryjobsUpdated_ struct {
// Applicable tryjobs were updated.
TryjobsUpdated *LogEntry_TryjobsUpdated `protobuf:"bytes,5,opt,name=tryjobs_updated,json=tryjobsUpdated,proto3,oneof"`
}
type LogEntry_Info_ struct {
// Intended for informational logs (E.g. temporary/during migration)
Info *LogEntry_Info `protobuf:"bytes,7,opt,name=info,proto3,oneof"`
}
type LogEntry_TreeChecked_ struct {
// The tree is configured and was checked.
TreeChecked *LogEntry_TreeChecked `protobuf:"bytes,8,opt,name=tree_checked,json=treeChecked,proto3,oneof"`
}
type LogEntry_Waitlisted_ struct {
// The run has been added to the submit queue's waitlist.
Waitlisted *LogEntry_Waitlisted `protobuf:"bytes,9,opt,name=waitlisted,proto3,oneof"`
}
type LogEntry_AcquiredSubmitQueue_ struct {
// The run is current on the queue.
AcquiredSubmitQueue *LogEntry_AcquiredSubmitQueue `protobuf:"bytes,10,opt,name=acquired_submit_queue,json=acquiredSubmitQueue,proto3,oneof"`
}
type LogEntry_ReleasedSubmitQueue_ struct {
ReleasedSubmitQueue *LogEntry_ReleasedSubmitQueue `protobuf:"bytes,11,opt,name=released_submit_queue,json=releasedSubmitQueue,proto3,oneof"`
}
type LogEntry_ClSubmitted struct {
// CL(s) submitted successfully.
ClSubmitted *LogEntry_CLSubmitted `protobuf:"bytes,12,opt,name=cl_submitted,json=clSubmitted,proto3,oneof"`
}
type LogEntry_SubmissionFailure_ struct {
// Submission failed.
SubmissionFailure *LogEntry_SubmissionFailure `protobuf:"bytes,13,opt,name=submission_failure,json=submissionFailure,proto3,oneof"`
}
type LogEntry_RunEnded_ struct {
RunEnded *LogEntry_RunEnded `protobuf:"bytes,14,opt,name=run_ended,json=runEnded,proto3,oneof"`
}
func (*LogEntry_Created_) isLogEntry_Kind() {}
func (*LogEntry_Started_) isLogEntry_Kind() {}
func (*LogEntry_ConfigChanged_) isLogEntry_Kind() {}
func (*LogEntry_TryjobsRequirementUpdated_) isLogEntry_Kind() {}
func (*LogEntry_TryjobsUpdated_) isLogEntry_Kind() {}
func (*LogEntry_Info_) isLogEntry_Kind() {}
func (*LogEntry_TreeChecked_) isLogEntry_Kind() {}
func (*LogEntry_Waitlisted_) isLogEntry_Kind() {}
func (*LogEntry_AcquiredSubmitQueue_) isLogEntry_Kind() {}
func (*LogEntry_ReleasedSubmitQueue_) isLogEntry_Kind() {}
func (*LogEntry_ClSubmitted) isLogEntry_Kind() {}
func (*LogEntry_SubmissionFailure_) isLogEntry_Kind() {}
func (*LogEntry_RunEnded_) isLogEntry_Kind() {}
// Tryjobs is the state of Run's tryjobs.
type Tryjobs struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Requirement is what has to happen to verify a given Run.
Requirement *tryjob.Requirement `protobuf:"bytes,1,opt,name=requirement,proto3" json:"requirement,omitempty"`
// StagingRequirement will be promoted to requirement.
//
// It is typically set when the existing requirement is executing and waiting
// to be cancelled. For example:
//
// T0: Run starts and computes the requirement. A long op task is executing
// the requirement.
// T1: A new config is ingested and results in a new requirement. RM
// requests a cancellation for the long op task and set the new
// requirement to this field.
// T2: The long op task is successfully cancelled. RM promotes the
// staging requirement to requirement and enqueue a new long op task to
// execute the new requirement.
StagingRequirement *tryjob.Requirement `protobuf:"bytes,4,opt,name=staging_requirement,json=stagingRequirement,proto3" json:"staging_requirement,omitempty"`
// RequirementVersion increments by 1 every time this requirement changes.
//
// Starts with 1.
RequirementVersion int32 `protobuf:"varint,6,opt,name=requirement_version,json=requirementVersion,proto3" json:"requirement_version,omitempty"`
// The timestamp when the requirement is last computed.
//
// Every requirement computation will update this field even if the result
// requirement is the same as the existing one.
RequirementComputedAt *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=requirement_computed_at,json=requirementComputedAt,proto3" json:"requirement_computed_at,omitempty"`
// Tryjobs tracks tryjobs of a Run.
//
// It may contain Tryjobs which are no longer required.
// It does contain all Tryjobs which weren't reused even if no longer
// required.
//
// TODO(crbug/1227363): replace this field in favor of `state`
//
// Deprecated: Marked as deprecated in go.chromium.org/luci/cv/internal/run/storage.proto.
Tryjobs []*Tryjob `protobuf:"bytes,2,rep,name=tryjobs,proto3" json:"tryjobs,omitempty"`
// The timestamp of the CQDaemon report last incorporated into `tryjobs`.
//
// TODO(crbug/1227523): delete this field.
CqdUpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=cqd_update_time,json=cqdUpdateTime,proto3" json:"cqd_update_time,omitempty"`
// State is the latest state reported by Tryjob Executor task.
//
// Once the Run is ended, this state is finalized.
State *tryjob.ExecutionState `protobuf:"bytes,5,opt,name=state,proto3" json:"state,omitempty"`
}
func (x *Tryjobs) Reset() {
*x = Tryjobs{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Tryjobs) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Tryjobs) ProtoMessage() {}
func (x *Tryjobs) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Tryjobs.ProtoReflect.Descriptor instead.
func (*Tryjobs) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{6}
}
func (x *Tryjobs) GetRequirement() *tryjob.Requirement {
if x != nil {
return x.Requirement
}
return nil
}
func (x *Tryjobs) GetStagingRequirement() *tryjob.Requirement {
if x != nil {
return x.StagingRequirement
}
return nil
}
func (x *Tryjobs) GetRequirementVersion() int32 {
if x != nil {
return x.RequirementVersion
}
return 0
}
func (x *Tryjobs) GetRequirementComputedAt() *timestamppb.Timestamp {
if x != nil {
return x.RequirementComputedAt
}
return nil
}
// Deprecated: Marked as deprecated in go.chromium.org/luci/cv/internal/run/storage.proto.
func (x *Tryjobs) GetTryjobs() []*Tryjob {
if x != nil {
return x.Tryjobs
}
return nil
}
func (x *Tryjobs) GetCqdUpdateTime() *timestamppb.Timestamp {
if x != nil {
return x.CqdUpdateTime
}
return nil
}
func (x *Tryjobs) GetState() *tryjob.ExecutionState {
if x != nil {
return x.State
}
return nil
}
// Tryjob represents a Run's view of a tryjob.
type Tryjob struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Definition *tryjob.Definition `protobuf:"bytes,1,opt,name=definition,proto3" json:"definition,omitempty"`
// ID is a CV internal Tryjob ID, corresponding to a Datastore entity.
//
// During migration from CQDaemon, the ID may be not set but then ExternalID
// is set.
// TODO(crbug/1227523): make this field required.
Id int64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"`
// EVersion of the Tryjob entity last observed by this Run.
Eversion int64 `protobuf:"varint,3,opt,name=eversion,proto3" json:"eversion,omitempty"`
// ExternalID is the external job ID.
//
// It's kept here for ease of URL generation and to ease migration from
// CQDaemon.
// TODO(crbug/1227523): update comment above after CQDaemon migration.
ExternalId string `protobuf:"bytes,4,opt,name=external_id,json=externalId,proto3" json:"external_id,omitempty"`
// Status of the Tryjob.
Status tryjob.Status `protobuf:"varint,5,opt,name=status,proto3,enum=cv.internal.tryjob.Status" json:"status,omitempty"`
// Reused is true, if this tryjob wasn't triggered by CV for this Run.
//
// In other words, either:
// - tryjob was triggered by CV for a previous Run
// - tryjob was triggered by non-CV.
Reused bool `protobuf:"varint,6,opt,name=reused,proto3" json:"reused,omitempty"`
// If true, indicates this tryjob must pass in order for the Run to be
// considered successful.
//
// It is typically true when the tryjob is NOT experimental or triggered
// because of `Cq-Include-TryBot` git footer.
Critical bool `protobuf:"varint,9,opt,name=critical,proto3" json:"critical,omitempty"`
// Result of the tryjob.
Result *tryjob.Result `protobuf:"bytes,7,opt,name=result,proto3" json:"result,omitempty"`
// If true, this Tryjob was computed based on CQDaemon's input.
//
// TODO(crbug/1227523): delete after CQDaemon migration.
CqdDerived bool `protobuf:"varint,8,opt,name=cqd_derived,json=cqdDerived,proto3" json:"cqd_derived,omitempty"`
}
func (x *Tryjob) Reset() {
*x = Tryjob{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Tryjob) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Tryjob) ProtoMessage() {}
func (x *Tryjob) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Tryjob.ProtoReflect.Descriptor instead.
func (*Tryjob) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{7}
}
func (x *Tryjob) GetDefinition() *tryjob.Definition {
if x != nil {
return x.Definition
}
return nil
}
func (x *Tryjob) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *Tryjob) GetEversion() int64 {
if x != nil {
return x.Eversion
}
return 0
}
func (x *Tryjob) GetExternalId() string {
if x != nil {
return x.ExternalId
}
return ""
}
func (x *Tryjob) GetStatus() tryjob.Status {
if x != nil {
return x.Status
}
return tryjob.Status(0)
}
func (x *Tryjob) GetReused() bool {
if x != nil {
return x.Reused
}
return false
}
func (x *Tryjob) GetCritical() bool {
if x != nil {
return x.Critical
}
return false
}
func (x *Tryjob) GetResult() *tryjob.Result {
if x != nil {
return x.Result
}
return nil
}
func (x *Tryjob) GetCqdDerived() bool {
if x != nil {
return x.CqdDerived
}
return false
}
// OngoingLongOps tracks ongoing long operations.
type OngoingLongOps struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Ops map operation ID to details.
Ops map[string]*OngoingLongOps_Op `protobuf:"bytes,1,rep,name=ops,proto3" json:"ops,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}
func (x *OngoingLongOps) Reset() {
*x = OngoingLongOps{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OngoingLongOps) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OngoingLongOps) ProtoMessage() {}
func (x *OngoingLongOps) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OngoingLongOps.ProtoReflect.Descriptor instead.
func (*OngoingLongOps) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{8}
}
func (x *OngoingLongOps) GetOps() map[string]*OngoingLongOps_Op {
if x != nil {
return x.Ops
}
return nil
}
type LogEntry_Created struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ConfigGroupId string `protobuf:"bytes,1,opt,name=config_group_id,json=configGroupId,proto3" json:"config_group_id,omitempty"`
}
func (x *LogEntry_Created) Reset() {
*x = LogEntry_Created{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_Created) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_Created) ProtoMessage() {}
func (x *LogEntry_Created) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_Created.ProtoReflect.Descriptor instead.
func (*LogEntry_Created) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 0}
}
func (x *LogEntry_Created) GetConfigGroupId() string {
if x != nil {
return x.ConfigGroupId
}
return ""
}
type LogEntry_Started struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *LogEntry_Started) Reset() {
*x = LogEntry_Started{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_Started) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_Started) ProtoMessage() {}
func (x *LogEntry_Started) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_Started.ProtoReflect.Descriptor instead.
func (*LogEntry_Started) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 1}
}
type LogEntry_ConfigChanged struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
ConfigGroupId string `protobuf:"bytes,1,opt,name=config_group_id,json=configGroupId,proto3" json:"config_group_id,omitempty"`
}
func (x *LogEntry_ConfigChanged) Reset() {
*x = LogEntry_ConfigChanged{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_ConfigChanged) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_ConfigChanged) ProtoMessage() {}
func (x *LogEntry_ConfigChanged) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_ConfigChanged.ProtoReflect.Descriptor instead.
func (*LogEntry_ConfigChanged) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 2}
}
func (x *LogEntry_ConfigChanged) GetConfigGroupId() string {
if x != nil {
return x.ConfigGroupId
}
return ""
}
type LogEntry_TryjobsRequirementUpdated struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *LogEntry_TryjobsRequirementUpdated) Reset() {
*x = LogEntry_TryjobsRequirementUpdated{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_TryjobsRequirementUpdated) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_TryjobsRequirementUpdated) ProtoMessage() {}
func (x *LogEntry_TryjobsRequirementUpdated) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_TryjobsRequirementUpdated.ProtoReflect.Descriptor instead.
func (*LogEntry_TryjobsRequirementUpdated) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 3}
}
type LogEntry_Info struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// If you have the need to add fields here, consider instead adding a new
// dedicated kind
Label string `protobuf:"bytes,1,opt,name=label,proto3" json:"label,omitempty"`
Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
}
func (x *LogEntry_Info) Reset() {
*x = LogEntry_Info{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_Info) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_Info) ProtoMessage() {}
func (x *LogEntry_Info) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_Info.ProtoReflect.Descriptor instead.
func (*LogEntry_Info) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 4}
}
func (x *LogEntry_Info) GetLabel() string {
if x != nil {
return x.Label
}
return ""
}
func (x *LogEntry_Info) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
type LogEntry_TryjobsUpdated struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Which tryjobs had a meaningful change (e.g. change of status).
Tryjobs []*Tryjob `protobuf:"bytes,2,rep,name=tryjobs,proto3" json:"tryjobs,omitempty"`
}
func (x *LogEntry_TryjobsUpdated) Reset() {
*x = LogEntry_TryjobsUpdated{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_TryjobsUpdated) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_TryjobsUpdated) ProtoMessage() {}
func (x *LogEntry_TryjobsUpdated) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_TryjobsUpdated.ProtoReflect.Descriptor instead.
func (*LogEntry_TryjobsUpdated) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 5}
}
func (x *LogEntry_TryjobsUpdated) GetTryjobs() []*Tryjob {
if x != nil {
return x.Tryjobs
}
return nil
}
type LogEntry_TreeChecked struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Open bool `protobuf:"varint,1,opt,name=open,proto3" json:"open,omitempty"`
}
func (x *LogEntry_TreeChecked) Reset() {
*x = LogEntry_TreeChecked{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_TreeChecked) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_TreeChecked) ProtoMessage() {}
func (x *LogEntry_TreeChecked) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_TreeChecked.ProtoReflect.Descriptor instead.
func (*LogEntry_TreeChecked) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 6}
}
func (x *LogEntry_TreeChecked) GetOpen() bool {
if x != nil {
return x.Open
}
return false
}
type LogEntry_Waitlisted struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *LogEntry_Waitlisted) Reset() {
*x = LogEntry_Waitlisted{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_Waitlisted) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_Waitlisted) ProtoMessage() {}
func (x *LogEntry_Waitlisted) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_Waitlisted.ProtoReflect.Descriptor instead.
func (*LogEntry_Waitlisted) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 7}
}
type LogEntry_AcquiredSubmitQueue struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *LogEntry_AcquiredSubmitQueue) Reset() {
*x = LogEntry_AcquiredSubmitQueue{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[17]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_AcquiredSubmitQueue) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_AcquiredSubmitQueue) ProtoMessage() {}
func (x *LogEntry_AcquiredSubmitQueue) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[17]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_AcquiredSubmitQueue.ProtoReflect.Descriptor instead.
func (*LogEntry_AcquiredSubmitQueue) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 8}
}
type LogEntry_ReleasedSubmitQueue struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *LogEntry_ReleasedSubmitQueue) Reset() {
*x = LogEntry_ReleasedSubmitQueue{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_ReleasedSubmitQueue) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_ReleasedSubmitQueue) ProtoMessage() {}
func (x *LogEntry_ReleasedSubmitQueue) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[18]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_ReleasedSubmitQueue.ProtoReflect.Descriptor instead.
func (*LogEntry_ReleasedSubmitQueue) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 9}
}
type LogEntry_CLSubmitted struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The CLs that were submitted in this event.
NewlySubmittedCls []int64 `protobuf:"varint,1,rep,packed,name=newly_submitted_cls,json=newlySubmittedCls,proto3" json:"newly_submitted_cls,omitempty"`
// The number of CLs submitted for this run, so far.
TotalSubmitted int64 `protobuf:"varint,2,opt,name=total_submitted,json=totalSubmitted,proto3" json:"total_submitted,omitempty"`
}
func (x *LogEntry_CLSubmitted) Reset() {
*x = LogEntry_CLSubmitted{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_CLSubmitted) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_CLSubmitted) ProtoMessage() {}
func (x *LogEntry_CLSubmitted) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[19]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_CLSubmitted.ProtoReflect.Descriptor instead.
func (*LogEntry_CLSubmitted) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 10}
}
func (x *LogEntry_CLSubmitted) GetNewlySubmittedCls() []int64 {
if x != nil {
return x.NewlySubmittedCls
}
return nil
}
func (x *LogEntry_CLSubmitted) GetTotalSubmitted() int64 {
if x != nil {
return x.TotalSubmitted
}
return 0
}
type LogEntry_SubmissionFailure struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Event *eventpb.SubmissionCompleted `protobuf:"bytes,1,opt,name=event,proto3" json:"event,omitempty"`
}
func (x *LogEntry_SubmissionFailure) Reset() {
*x = LogEntry_SubmissionFailure{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_SubmissionFailure) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_SubmissionFailure) ProtoMessage() {}
func (x *LogEntry_SubmissionFailure) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[20]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_SubmissionFailure.ProtoReflect.Descriptor instead.
func (*LogEntry_SubmissionFailure) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 11}
}
func (x *LogEntry_SubmissionFailure) GetEvent() *eventpb.SubmissionCompleted {
if x != nil {
return x.Event
}
return nil
}
type LogEntry_RunEnded struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *LogEntry_RunEnded) Reset() {
*x = LogEntry_RunEnded{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *LogEntry_RunEnded) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*LogEntry_RunEnded) ProtoMessage() {}
func (x *LogEntry_RunEnded) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[21]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use LogEntry_RunEnded.ProtoReflect.Descriptor instead.
func (*LogEntry_RunEnded) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{5, 12}
}
type OngoingLongOps_Op struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Deadline best-effort limits the lifetime of this work.
//
// Run Manager expects to receive a LongOpCompleted event by this deadline.
Deadline *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=deadline,proto3" json:"deadline,omitempty"`
// If true, signals to the Long Op handler that it should stop as soon
// possible.
CancelRequested bool `protobuf:"varint,2,opt,name=cancel_requested,json=cancelRequested,proto3" json:"cancel_requested,omitempty"`
// Types that are assignable to Work:
//
// *OngoingLongOps_Op_PostStartMessage
// *OngoingLongOps_Op_ResetTriggers_
// *OngoingLongOps_Op_ExecuteTryjobs
// *OngoingLongOps_Op_ExecutePostAction
// *OngoingLongOps_Op_PostGerritMessage_
Work isOngoingLongOps_Op_Work `protobuf_oneof:"work"`
}
func (x *OngoingLongOps_Op) Reset() {
*x = OngoingLongOps_Op{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[22]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OngoingLongOps_Op) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OngoingLongOps_Op) ProtoMessage() {}
func (x *OngoingLongOps_Op) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[22]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OngoingLongOps_Op.ProtoReflect.Descriptor instead.
func (*OngoingLongOps_Op) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{8, 0}
}
func (x *OngoingLongOps_Op) GetDeadline() *timestamppb.Timestamp {
if x != nil {
return x.Deadline
}
return nil
}
func (x *OngoingLongOps_Op) GetCancelRequested() bool {
if x != nil {
return x.CancelRequested
}
return false
}
func (m *OngoingLongOps_Op) GetWork() isOngoingLongOps_Op_Work {
if m != nil {
return m.Work
}
return nil
}
func (x *OngoingLongOps_Op) GetPostStartMessage() bool {
if x, ok := x.GetWork().(*OngoingLongOps_Op_PostStartMessage); ok {
return x.PostStartMessage
}
return false
}
func (x *OngoingLongOps_Op) GetResetTriggers() *OngoingLongOps_Op_ResetTriggers {
if x, ok := x.GetWork().(*OngoingLongOps_Op_ResetTriggers_); ok {
return x.ResetTriggers
}
return nil
}
func (x *OngoingLongOps_Op) GetExecuteTryjobs() *tryjob.ExecuteTryjobsPayload {
if x, ok := x.GetWork().(*OngoingLongOps_Op_ExecuteTryjobs); ok {
return x.ExecuteTryjobs
}
return nil
}
func (x *OngoingLongOps_Op) GetExecutePostAction() *OngoingLongOps_Op_ExecutePostActionPayload {
if x, ok := x.GetWork().(*OngoingLongOps_Op_ExecutePostAction); ok {
return x.ExecutePostAction
}
return nil
}
func (x *OngoingLongOps_Op) GetPostGerritMessage() *OngoingLongOps_Op_PostGerritMessage {
if x, ok := x.GetWork().(*OngoingLongOps_Op_PostGerritMessage_); ok {
return x.PostGerritMessage
}
return nil
}
type isOngoingLongOps_Op_Work interface {
isOngoingLongOps_Op_Work()
}
type OngoingLongOps_Op_PostStartMessage struct {
// If true, posts a start message.
PostStartMessage bool `protobuf:"varint,3,opt,name=post_start_message,json=postStartMessage,proto3,oneof"`
}
type OngoingLongOps_Op_ResetTriggers_ struct {
ResetTriggers *OngoingLongOps_Op_ResetTriggers `protobuf:"bytes,6,opt,name=reset_triggers,json=resetTriggers,proto3,oneof"`
}
type OngoingLongOps_Op_ExecuteTryjobs struct {
ExecuteTryjobs *tryjob.ExecuteTryjobsPayload `protobuf:"bytes,5,opt,name=execute_tryjobs,json=executeTryjobs,proto3,oneof"`
}
type OngoingLongOps_Op_ExecutePostAction struct {
// The PostActions from different runs can race each other in case
// the actions from an earlier Run transiently failed and are being
// retried. However, the resolution depends on the type of the post
// action.
//
// If the action is to export the Run records to BQ, each of the Run
// records should be exported, and CV should still attempt to execute post
// actions for all the Runs ever triggered.
//
// In contrast, if the action is to vote a label, the post action handler
// should check if the originated patchset is still the latest at the time
// of the long-op processing time, and skip the action, if the patchset
// is no longer the latest.
ExecutePostAction *OngoingLongOps_Op_ExecutePostActionPayload `protobuf:"bytes,7,opt,name=execute_post_action,json=executePostAction,proto3,oneof"`
}
type OngoingLongOps_Op_PostGerritMessage_ struct {
// Post a custom message to all the CLs linked to a run.
PostGerritMessage *OngoingLongOps_Op_PostGerritMessage `protobuf:"bytes,8,opt,name=post_gerrit_message,json=postGerritMessage,proto3,oneof"`
}
func (*OngoingLongOps_Op_PostStartMessage) isOngoingLongOps_Op_Work() {}
func (*OngoingLongOps_Op_ResetTriggers_) isOngoingLongOps_Op_Work() {}
func (*OngoingLongOps_Op_ExecuteTryjobs) isOngoingLongOps_Op_Work() {}
func (*OngoingLongOps_Op_ExecutePostAction) isOngoingLongOps_Op_Work() {}
func (*OngoingLongOps_Op_PostGerritMessage_) isOngoingLongOps_Op_Work() {}
type OngoingLongOps_Op_ResetTriggers struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Requests []*OngoingLongOps_Op_ResetTriggers_Request `protobuf:"bytes,1,rep,name=requests,proto3" json:"requests,omitempty"`
// The status Run will transition to if all triggers are successfully
// cancelled.
//
// Must be one of the terminal statues.
RunStatusIfSucceeded Status `protobuf:"varint,2,opt,name=run_status_if_succeeded,json=runStatusIfSucceeded,proto3,enum=cv.internal.run.Status" json:"run_status_if_succeeded,omitempty"`
}
func (x *OngoingLongOps_Op_ResetTriggers) Reset() {
*x = OngoingLongOps_Op_ResetTriggers{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[24]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OngoingLongOps_Op_ResetTriggers) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OngoingLongOps_Op_ResetTriggers) ProtoMessage() {}
func (x *OngoingLongOps_Op_ResetTriggers) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[24]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OngoingLongOps_Op_ResetTriggers.ProtoReflect.Descriptor instead.
func (*OngoingLongOps_Op_ResetTriggers) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{8, 0, 0}
}
func (x *OngoingLongOps_Op_ResetTriggers) GetRequests() []*OngoingLongOps_Op_ResetTriggers_Request {
if x != nil {
return x.Requests
}
return nil
}
func (x *OngoingLongOps_Op_ResetTriggers) GetRunStatusIfSucceeded() Status {
if x != nil {
return x.RunStatusIfSucceeded
}
return Status_STATUS_UNSPECIFIED
}
// ExecutePostActionPayload is the payload of a long-op task that executes
// a given post action.
type OngoingLongOps_Op_ExecutePostActionPayload struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Name of the post action.
//
// For config action, it should be the same as the name in the config
// action.
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
// Types that are assignable to Kind:
//
// *OngoingLongOps_Op_ExecutePostActionPayload_ConfigAction
// *OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota_
Kind isOngoingLongOps_Op_ExecutePostActionPayload_Kind `protobuf_oneof:"kind"`
}
func (x *OngoingLongOps_Op_ExecutePostActionPayload) Reset() {
*x = OngoingLongOps_Op_ExecutePostActionPayload{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[25]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OngoingLongOps_Op_ExecutePostActionPayload) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OngoingLongOps_Op_ExecutePostActionPayload) ProtoMessage() {}
func (x *OngoingLongOps_Op_ExecutePostActionPayload) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[25]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OngoingLongOps_Op_ExecutePostActionPayload.ProtoReflect.Descriptor instead.
func (*OngoingLongOps_Op_ExecutePostActionPayload) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{8, 0, 1}
}
func (x *OngoingLongOps_Op_ExecutePostActionPayload) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (m *OngoingLongOps_Op_ExecutePostActionPayload) GetKind() isOngoingLongOps_Op_ExecutePostActionPayload_Kind {
if m != nil {
return m.Kind
}
return nil
}
func (x *OngoingLongOps_Op_ExecutePostActionPayload) GetConfigAction() *v2.ConfigGroup_PostAction {
if x, ok := x.GetKind().(*OngoingLongOps_Op_ExecutePostActionPayload_ConfigAction); ok {
return x.ConfigAction
}
return nil
}
func (x *OngoingLongOps_Op_ExecutePostActionPayload) GetCreditRunQuota() *OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota {
if x, ok := x.GetKind().(*OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota_); ok {
return x.CreditRunQuota
}
return nil
}
type isOngoingLongOps_Op_ExecutePostActionPayload_Kind interface {
isOngoingLongOps_Op_ExecutePostActionPayload_Kind()
}
type OngoingLongOps_Op_ExecutePostActionPayload_ConfigAction struct {
// ConfigAction is the post action defined in the config group.
ConfigAction *v2.ConfigGroup_PostAction `protobuf:"bytes,3,opt,name=config_action,json=configAction,proto3,oneof"`
}
type OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota_ struct {
// CreditRunQuota credits the quota back to the run creator and ask
// next run that is blocked on the quota to start.
CreditRunQuota *OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota `protobuf:"bytes,4,opt,name=credit_run_quota,json=creditRunQuota,proto3,oneof"`
}
func (*OngoingLongOps_Op_ExecutePostActionPayload_ConfigAction) isOngoingLongOps_Op_ExecutePostActionPayload_Kind() {
}
func (*OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota_) isOngoingLongOps_Op_ExecutePostActionPayload_Kind() {
}
// PostGerritMessage is the payload for posting a bot message within
// a run's gerrit CLs.
type OngoingLongOps_Op_PostGerritMessage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Message to post to gerrit. The current implementation treats the
// message as a unique key to achieve idempotence. If multiple payloads
// with the same message is triggered for the same run, only one would
// be posted.
Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
}
func (x *OngoingLongOps_Op_PostGerritMessage) Reset() {
*x = OngoingLongOps_Op_PostGerritMessage{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[26]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OngoingLongOps_Op_PostGerritMessage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OngoingLongOps_Op_PostGerritMessage) ProtoMessage() {}
func (x *OngoingLongOps_Op_PostGerritMessage) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[26]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OngoingLongOps_Op_PostGerritMessage.ProtoReflect.Descriptor instead.
func (*OngoingLongOps_Op_PostGerritMessage) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{8, 0, 2}
}
func (x *OngoingLongOps_Op_PostGerritMessage) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
// Request is to request resetting the trigger of a CL.
type OngoingLongOps_Op_ResetTriggers_Request struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// internal CLID.
Clid int64 `protobuf:"varint,1,opt,name=clid,proto3" json:"clid,omitempty"`
// Message explains why trigger is reset. Will be posted to the CL.
Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
// Whom to notify.
Notify []gerrit.Whom `protobuf:"varint,3,rep,packed,name=notify,proto3,enum=cv.internal.gerrit.Whom" json:"notify,omitempty"`
// Whom to add to the attention set.
AddToAttention []gerrit.Whom `protobuf:"varint,4,rep,packed,name=add_to_attention,json=addToAttention,proto3,enum=cv.internal.gerrit.Whom" json:"add_to_attention,omitempty"`
// Reason explains the reason of attention set change.
AddToAttentionReason string `protobuf:"bytes,5,opt,name=add_to_attention_reason,json=addToAttentionReason,proto3" json:"add_to_attention_reason,omitempty"`
}
func (x *OngoingLongOps_Op_ResetTriggers_Request) Reset() {
*x = OngoingLongOps_Op_ResetTriggers_Request{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[27]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OngoingLongOps_Op_ResetTriggers_Request) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OngoingLongOps_Op_ResetTriggers_Request) ProtoMessage() {}
func (x *OngoingLongOps_Op_ResetTriggers_Request) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[27]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OngoingLongOps_Op_ResetTriggers_Request.ProtoReflect.Descriptor instead.
func (*OngoingLongOps_Op_ResetTriggers_Request) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{8, 0, 0, 0}
}
func (x *OngoingLongOps_Op_ResetTriggers_Request) GetClid() int64 {
if x != nil {
return x.Clid
}
return 0
}
func (x *OngoingLongOps_Op_ResetTriggers_Request) GetMessage() string {
if x != nil {
return x.Message
}
return ""
}
func (x *OngoingLongOps_Op_ResetTriggers_Request) GetNotify() []gerrit.Whom {
if x != nil {
return x.Notify
}
return nil
}
func (x *OngoingLongOps_Op_ResetTriggers_Request) GetAddToAttention() []gerrit.Whom {
if x != nil {
return x.AddToAttention
}
return nil
}
func (x *OngoingLongOps_Op_ResetTriggers_Request) GetAddToAttentionReason() string {
if x != nil {
return x.AddToAttentionReason
}
return ""
}
type OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
}
func (x *OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota) Reset() {
*x = OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[28]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota) ProtoMessage() {}
func (x *OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[28]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota.ProtoReflect.Descriptor instead.
func (*OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{8, 0, 1, 0}
}
var File_go_chromium_org_luci_cv_internal_run_storage_proto protoreflect.FileDescriptor
var file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDesc = []byte{
0x0a, 0x32, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x76, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
0x61, 0x6c, 0x2f, 0x72, 0x75, 0x6e, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0f, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x32, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x76, 0x2f,
0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2f, 0x76, 0x32, 0x2f, 0x63, 0x6f,
0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x35, 0x67, 0x6f, 0x2e, 0x63,
0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69,
0x2f, 0x63, 0x76, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x67, 0x65, 0x72,
0x72, 0x69, 0x74, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
0x6f, 0x1a, 0x3d, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f,
0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x76, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72,
0x6e, 0x61, 0x6c, 0x2f, 0x72, 0x75, 0x6e, 0x2f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x70, 0x62, 0x2f,
0x73, 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
0x1a, 0x35, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x76, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
0x61, 0x6c, 0x2f, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x2f, 0x73, 0x74, 0x6f, 0x72, 0x61, 0x67,
0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x32, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f,
0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x76,
0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62,
0x2f, 0x74, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xcf, 0x01, 0x0a, 0x07,
0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18,
0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
0x70, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x18,
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x38, 0x0a, 0x0f, 0x6d,
0x6f, 0x64, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x06,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x63, 0x76, 0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0e, 0x6d, 0x6f, 0x64, 0x65, 0x44, 0x65, 0x66, 0x69, 0x6e,
0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x18, 0x03,
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x6d, 0x61, 0x69, 0x6c, 0x12, 0x2a, 0x0a, 0x11, 0x67,
0x65, 0x72, 0x72, 0x69, 0x74, 0x5f, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x64,
0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x41, 0x63,
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x64, 0x4a, 0x04, 0x08, 0x05, 0x10, 0x06, 0x22, 0x9f, 0x01,
0x0a, 0x08, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x12, 0x40, 0x0a, 0x0f, 0x63, 0x71,
0x5f, 0x76, 0x6f, 0x74, 0x65, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x18, 0x01, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x0d, 0x63,
0x71, 0x56, 0x6f, 0x74, 0x65, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x12, 0x51, 0x0a, 0x18,
0x6e, 0x65, 0x77, 0x5f, 0x70, 0x61, 0x74, 0x63, 0x68, 0x73, 0x65, 0x74, 0x5f, 0x72, 0x75, 0x6e,
0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18,
0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e,
0x2e, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x52, 0x15, 0x6e, 0x65, 0x77, 0x50, 0x61, 0x74,
0x63, 0x68, 0x73, 0x65, 0x74, 0x52, 0x75, 0x6e, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x22,
0xe3, 0x02, 0x0a, 0x0a, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x36,
0x0a, 0x08, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x64, 0x65,
0x61, 0x64, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x61, 0x73, 0x6b, 0x5f, 0x69,
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x73, 0x6b, 0x49, 0x64, 0x12,
0x10, 0x0a, 0x03, 0x63, 0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x03, 0x52, 0x03, 0x63, 0x6c,
0x73, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x63,
0x6c, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x03, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74,
0x74, 0x65, 0x64, 0x43, 0x6c, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64,
0x5f, 0x63, 0x6c, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x03, 0x52, 0x09, 0x66, 0x61, 0x69, 0x6c,
0x65, 0x64, 0x43, 0x6c, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x65, 0x65, 0x5f, 0x6f, 0x70,
0x65, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x74, 0x72, 0x65, 0x65, 0x4f, 0x70,
0x65, 0x6e, 0x12, 0x4b, 0x0a, 0x14, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x74, 0x72, 0x65, 0x65, 0x5f,
0x63, 0x68, 0x65, 0x63, 0x6b, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x11, 0x6c, 0x61,
0x73, 0x74, 0x54, 0x72, 0x65, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x54, 0x69, 0x6d, 0x65, 0x12,
0x44, 0x0a, 0x10, 0x74, 0x72, 0x65, 0x65, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x73, 0x69,
0x6e, 0x63, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x74, 0x72, 0x65, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72,
0x53, 0x69, 0x6e, 0x63, 0x65, 0x22, 0xf9, 0x02, 0x0a, 0x07, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x12, 0x28, 0x0a, 0x10, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x65, 0x65, 0x5f, 0x63,
0x68, 0x65, 0x63, 0x6b, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x73, 0x6b, 0x69,
0x70, 0x54, 0x72, 0x65, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x73,
0x6b, 0x69, 0x70, 0x5f, 0x65, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x5f, 0x62,
0x75, 0x69, 0x6c, 0x64, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x73,
0x6b, 0x69, 0x70, 0x45, 0x71, 0x75, 0x69, 0x76, 0x61, 0x6c, 0x65, 0x6e, 0x74, 0x42, 0x75, 0x69,
0x6c, 0x64, 0x65, 0x72, 0x73, 0x12, 0x38, 0x0a, 0x18, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x5f, 0x63,
0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62,
0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x43, 0x61,
0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x12,
0x21, 0x0a, 0x0c, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x18,
0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x73, 0x6b, 0x69, 0x70, 0x54, 0x72, 0x79, 0x6a, 0x6f,
0x62, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x6b, 0x69, 0x70, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x75,
0x62, 0x6d, 0x69, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x6b, 0x69, 0x70,
0x50, 0x72, 0x65, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x63,
0x6c, 0x75, 0x64, 0x65, 0x64, 0x5f, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x18, 0x06, 0x20,
0x03, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x63, 0x6c, 0x75, 0x64, 0x65, 0x64, 0x54, 0x72, 0x79,
0x6a, 0x6f, 0x62, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x64,
0x65, 0x6e, 0x5f, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09,
0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x54, 0x72, 0x79, 0x6a,
0x6f, 0x62, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x74, 0x72,
0x79, 0x6a, 0x6f, 0x62, 0x5f, 0x74, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52,
0x10, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x54, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x54, 0x61, 0x67,
0x73, 0x22, 0x41, 0x0a, 0x0a, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12,
0x33, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x19, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72,
0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x6e, 0x74,
0x72, 0x69, 0x65, 0x73, 0x22, 0x9c, 0x0d, 0x0a, 0x08, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x04, 0x74, 0x69, 0x6d,
0x65, 0x12, 0x3d, 0x0a, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x2e, 0x43, 0x72,
0x65, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x07, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64,
0x12, 0x3d, 0x0a, 0x07, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x21, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x2e, 0x53, 0x74, 0x61,
0x72, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x07, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x12,
0x50, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74,
0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74,
0x72, 0x79, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64,
0x48, 0x00, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65,
0x64, 0x12, 0x75, 0x0a, 0x1b, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x5f, 0x72, 0x65, 0x71,
0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64,
0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x2e, 0x54, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
0x6d, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x19, 0x74,
0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e,
0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x53, 0x0a, 0x0f, 0x74, 0x72, 0x79, 0x6a,
0x6f, 0x62, 0x73, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28,
0x0b, 0x32, 0x28, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e,
0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x79,
0x6a, 0x6f, 0x62, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x74,
0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x34, 0x0a,
0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x63, 0x76,
0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f,
0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x2e, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52, 0x04, 0x69,
0x6e, 0x66, 0x6f, 0x12, 0x4a, 0x0a, 0x0c, 0x74, 0x72, 0x65, 0x65, 0x5f, 0x63, 0x68, 0x65, 0x63,
0x6b, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x76, 0x2e, 0x69,
0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45,
0x6e, 0x74, 0x72, 0x79, 0x2e, 0x54, 0x72, 0x65, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64,
0x48, 0x00, 0x52, 0x0b, 0x74, 0x72, 0x65, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x12,
0x46, 0x0a, 0x0a, 0x77, 0x61, 0x69, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x18, 0x09, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x2e, 0x57,
0x61, 0x69, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x48, 0x00, 0x52, 0x0a, 0x77, 0x61, 0x69,
0x74, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64, 0x12, 0x63, 0x0a, 0x15, 0x61, 0x63, 0x71, 0x75, 0x69,
0x72, 0x65, 0x64, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65,
0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72,
0x79, 0x2e, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74,
0x51, 0x75, 0x65, 0x75, 0x65, 0x48, 0x00, 0x52, 0x13, 0x61, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65,
0x64, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x63, 0x0a, 0x15,
0x72, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x5f,
0x71, 0x75, 0x65, 0x75, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x63, 0x76,
0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f,
0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x2e, 0x52, 0x65, 0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x53,
0x75, 0x62, 0x6d, 0x69, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x48, 0x00, 0x52, 0x13, 0x72, 0x65,
0x6c, 0x65, 0x61, 0x73, 0x65, 0x64, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x51, 0x75, 0x65, 0x75,
0x65, 0x12, 0x4a, 0x0a, 0x0c, 0x63, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65,
0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74,
0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74,
0x72, 0x79, 0x2e, 0x43, 0x4c, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x48, 0x00,
0x52, 0x0b, 0x63, 0x6c, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x12, 0x5c, 0x0a,
0x12, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x61, 0x69, 0x6c,
0x75, 0x72, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x63, 0x76, 0x2e, 0x69,
0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4c, 0x6f, 0x67, 0x45,
0x6e, 0x74, 0x72, 0x79, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x46,
0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x48, 0x00, 0x52, 0x11, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x73,
0x73, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x12, 0x41, 0x0a, 0x09, 0x72,
0x75, 0x6e, 0x5f, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e,
0x2e, 0x4c, 0x6f, 0x67, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x2e, 0x52, 0x75, 0x6e, 0x45, 0x6e, 0x64,
0x65, 0x64, 0x48, 0x00, 0x52, 0x08, 0x72, 0x75, 0x6e, 0x45, 0x6e, 0x64, 0x65, 0x64, 0x1a, 0x31,
0x0a, 0x07, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x6f, 0x6e,
0x66, 0x69, 0x67, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49,
0x64, 0x1a, 0x09, 0x0a, 0x07, 0x53, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x1a, 0x37, 0x0a, 0x0d,
0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x12, 0x26, 0x0a,
0x0f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x47, 0x72,
0x6f, 0x75, 0x70, 0x49, 0x64, 0x1a, 0x1b, 0x0a, 0x19, 0x54, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73,
0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74,
0x65, 0x64, 0x1a, 0x36, 0x0a, 0x04, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61,
0x62, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, 0x65, 0x6c,
0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x43, 0x0a, 0x0e, 0x54, 0x72,
0x79, 0x6a, 0x6f, 0x62, 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x64, 0x12, 0x31, 0x0a, 0x07,
0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e,
0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e,
0x54, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x52, 0x07, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x1a,
0x21, 0x0a, 0x0b, 0x54, 0x72, 0x65, 0x65, 0x43, 0x68, 0x65, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x12,
0x0a, 0x04, 0x6f, 0x70, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x6f, 0x70,
0x65, 0x6e, 0x1a, 0x0c, 0x0a, 0x0a, 0x57, 0x61, 0x69, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x65, 0x64,
0x1a, 0x15, 0x0a, 0x13, 0x41, 0x63, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x53, 0x75, 0x62, 0x6d,
0x69, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x1a, 0x15, 0x0a, 0x13, 0x52, 0x65, 0x6c, 0x65, 0x61,
0x73, 0x65, 0x64, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x51, 0x75, 0x65, 0x75, 0x65, 0x1a, 0x66,
0x0a, 0x0b, 0x43, 0x4c, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x12, 0x2e, 0x0a,
0x13, 0x6e, 0x65, 0x77, 0x6c, 0x79, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64,
0x5f, 0x63, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x03, 0x52, 0x11, 0x6e, 0x65, 0x77, 0x6c,
0x79, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x43, 0x6c, 0x73, 0x12, 0x27, 0x0a,
0x0f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x74, 0x65, 0x64,
0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x75, 0x62,
0x6d, 0x69, 0x74, 0x74, 0x65, 0x64, 0x1a, 0x57, 0x0a, 0x11, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x73,
0x73, 0x69, 0x6f, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x12, 0x42, 0x0a, 0x05, 0x65,
0x76, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x63, 0x76, 0x2e,
0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x65, 0x76, 0x65,
0x6e, 0x74, 0x70, 0x62, 0x2e, 0x53, 0x75, 0x62, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43,
0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x1a,
0x0a, 0x0a, 0x08, 0x52, 0x75, 0x6e, 0x45, 0x6e, 0x64, 0x65, 0x64, 0x42, 0x06, 0x0a, 0x04, 0x6b,
0x69, 0x6e, 0x64, 0x22, 0xd8, 0x03, 0x0a, 0x07, 0x54, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x12,
0x41, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
0x61, 0x6c, 0x2e, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72,
0x65, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65,
0x6e, 0x74, 0x12, 0x50, 0x0a, 0x13, 0x73, 0x74, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x65,
0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x1f, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x74, 0x72,
0x79, 0x6a, 0x6f, 0x62, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74,
0x52, 0x12, 0x73, 0x74, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
0x6d, 0x65, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x13, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d,
0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28,
0x05, 0x52, 0x12, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x56, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x17, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65,
0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74,
0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x52, 0x15, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x43,
0x6f, 0x6d, 0x70, 0x75, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x35, 0x0a, 0x07, 0x74, 0x72, 0x79,
0x6a, 0x6f, 0x62, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x63, 0x76, 0x2e,
0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x54, 0x72, 0x79,
0x6a, 0x6f, 0x62, 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73,
0x12, 0x42, 0x0a, 0x0f, 0x63, 0x71, 0x64, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74,
0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0d, 0x63, 0x71, 0x64, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
0x54, 0x69, 0x6d, 0x65, 0x12, 0x38, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x05, 0x20,
0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x6c, 0x2e, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x69,
0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0xd2,
0x02, 0x0a, 0x06, 0x54, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x12, 0x3e, 0x0a, 0x0a, 0x64, 0x65, 0x66,
0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e,
0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x74, 0x72, 0x79, 0x6a,
0x6f, 0x62, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x64,
0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x65, 0x76, 0x65,
0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x6c, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x32, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73,
0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x2e, 0x53, 0x74, 0x61, 0x74,
0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65,
0x75, 0x73, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x75, 0x73,
0x65, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x18, 0x09,
0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x63, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x12, 0x32,
0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x74, 0x72, 0x79,
0x6a, 0x6f, 0x62, 0x2e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75,
0x6c, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x71, 0x64, 0x5f, 0x64, 0x65, 0x72, 0x69, 0x76, 0x65,
0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x63, 0x71, 0x64, 0x44, 0x65, 0x72, 0x69,
0x76, 0x65, 0x64, 0x22, 0xb9, 0x0b, 0x0a, 0x0e, 0x4f, 0x6e, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x4c,
0x6f, 0x6e, 0x67, 0x4f, 0x70, 0x73, 0x12, 0x3a, 0x0a, 0x03, 0x6f, 0x70, 0x73, 0x18, 0x01, 0x20,
0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61,
0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4f, 0x6e, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x6e,
0x67, 0x4f, 0x70, 0x73, 0x2e, 0x4f, 0x70, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x6f,
0x70, 0x73, 0x1a, 0x8e, 0x0a, 0x0a, 0x02, 0x4f, 0x70, 0x12, 0x36, 0x0a, 0x08, 0x64, 0x65, 0x61,
0x64, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x64, 0x65, 0x61, 0x64, 0x6c, 0x69, 0x6e,
0x65, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63, 0x61, 0x6e,
0x63, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x12,
0x70, 0x6f, 0x73, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x10, 0x70, 0x6f, 0x73, 0x74,
0x53, 0x74, 0x61, 0x72, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x59, 0x0a, 0x0e,
0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x18, 0x06,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e,
0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4f, 0x6e, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x4c, 0x6f,
0x6e, 0x67, 0x4f, 0x70, 0x73, 0x2e, 0x4f, 0x70, 0x2e, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x72,
0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x48, 0x00, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x65, 0x74, 0x54,
0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x12, 0x54, 0x0a, 0x0f, 0x65, 0x78, 0x65, 0x63, 0x75,
0x74, 0x65, 0x5f, 0x74, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x29, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x74,
0x72, 0x79, 0x6a, 0x6f, 0x62, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x54, 0x72, 0x79,
0x6a, 0x6f, 0x62, 0x73, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x48, 0x00, 0x52, 0x0e, 0x65,
0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x54, 0x72, 0x79, 0x6a, 0x6f, 0x62, 0x73, 0x12, 0x6d, 0x0a,
0x13, 0x65, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x5f, 0x70, 0x6f, 0x73, 0x74, 0x5f, 0x61, 0x63,
0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x63, 0x76, 0x2e,
0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4f, 0x6e, 0x67,
0x6f, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x6e, 0x67, 0x4f, 0x70, 0x73, 0x2e, 0x4f, 0x70, 0x2e, 0x45,
0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e,
0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x48, 0x00, 0x52, 0x11, 0x65, 0x78, 0x65, 0x63, 0x75,
0x74, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x66, 0x0a, 0x13,
0x70, 0x6f, 0x73, 0x74, 0x5f, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x63, 0x76, 0x2e, 0x69,
0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4f, 0x6e, 0x67, 0x6f,
0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x6e, 0x67, 0x4f, 0x70, 0x73, 0x2e, 0x4f, 0x70, 0x2e, 0x50, 0x6f,
0x73, 0x74, 0x47, 0x65, 0x72, 0x72, 0x69, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48,
0x00, 0x52, 0x11, 0x70, 0x6f, 0x73, 0x74, 0x47, 0x65, 0x72, 0x72, 0x69, 0x74, 0x4d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x1a, 0x9c, 0x03, 0x0a, 0x0d, 0x52, 0x65, 0x73, 0x65, 0x74, 0x54, 0x72,
0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x12, 0x54, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4f, 0x6e, 0x67, 0x6f, 0x69,
0x6e, 0x67, 0x4c, 0x6f, 0x6e, 0x67, 0x4f, 0x70, 0x73, 0x2e, 0x4f, 0x70, 0x2e, 0x52, 0x65, 0x73,
0x65, 0x74, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x73, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65,
0x73, 0x74, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12, 0x4e, 0x0a, 0x17,
0x72, 0x75, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x69, 0x66, 0x5f, 0x73, 0x75,
0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e,
0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e,
0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x14, 0x72, 0x75, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75,
0x73, 0x49, 0x66, 0x53, 0x75, 0x63, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x1a, 0xe4, 0x01, 0x0a,
0x07, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6c, 0x69, 0x64,
0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x63, 0x6c, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x30, 0x0a, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79,
0x18, 0x03, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65,
0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x57, 0x68, 0x6f, 0x6d,
0x52, 0x06, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x12, 0x42, 0x0a, 0x10, 0x61, 0x64, 0x64, 0x5f,
0x74, 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x03,
0x28, 0x0e, 0x32, 0x18, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
0x2e, 0x67, 0x65, 0x72, 0x72, 0x69, 0x74, 0x2e, 0x57, 0x68, 0x6f, 0x6d, 0x52, 0x0e, 0x61, 0x64,
0x64, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x0a, 0x17,
0x61, 0x64, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e,
0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x14, 0x61,
0x64, 0x64, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x61,
0x73, 0x6f, 0x6e, 0x1a, 0x90, 0x02, 0x0a, 0x18, 0x45, 0x78, 0x65, 0x63, 0x75, 0x74, 0x65, 0x50,
0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64,
0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
0x6e, 0x61, 0x6d, 0x65, 0x12, 0x48, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x61,
0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x63, 0x76,
0x2e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x47, 0x72,
0x6f, 0x75, 0x70, 0x2e, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00,
0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x76,
0x0a, 0x10, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x72, 0x75, 0x6e, 0x5f, 0x71, 0x75, 0x6f,
0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72, 0x75, 0x6e, 0x2e, 0x4f, 0x6e, 0x67, 0x6f, 0x69,
0x6e, 0x67, 0x4c, 0x6f, 0x6e, 0x67, 0x4f, 0x70, 0x73, 0x2e, 0x4f, 0x70, 0x2e, 0x45, 0x78, 0x65,
0x63, 0x75, 0x74, 0x65, 0x50, 0x6f, 0x73, 0x74, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61,
0x79, 0x6c, 0x6f, 0x61, 0x64, 0x2e, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74, 0x52, 0x75, 0x6e, 0x51,
0x75, 0x6f, 0x74, 0x61, 0x48, 0x00, 0x52, 0x0e, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x52, 0x75,
0x6e, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x1a, 0x10, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74,
0x52, 0x75, 0x6e, 0x51, 0x75, 0x6f, 0x74, 0x61, 0x42, 0x06, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64,
0x4a, 0x04, 0x08, 0x01, 0x10, 0x02, 0x1a, 0x2d, 0x0a, 0x11, 0x50, 0x6f, 0x73, 0x74, 0x47, 0x65,
0x72, 0x72, 0x69, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d,
0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x77, 0x6f, 0x72, 0x6b, 0x4a, 0x04, 0x08,
0x04, 0x10, 0x05, 0x1a, 0x5a, 0x0a, 0x08, 0x4f, 0x70, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
0x79, 0x12, 0x38, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
0x32, 0x22, 0x2e, 0x63, 0x76, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2e, 0x72,
0x75, 0x6e, 0x2e, 0x4f, 0x6e, 0x67, 0x6f, 0x69, 0x6e, 0x67, 0x4c, 0x6f, 0x6e, 0x67, 0x4f, 0x70,
0x73, 0x2e, 0x4f, 0x70, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a,
0xa0, 0x01, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54,
0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12,
0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16,
0x57, 0x41, 0x49, 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x53, 0x55, 0x42, 0x4d,
0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x55, 0x42, 0x4d,
0x49, 0x54, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x45, 0x4e, 0x44, 0x45,
0x44, 0x5f, 0x4d, 0x41, 0x53, 0x4b, 0x10, 0x40, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x55, 0x43, 0x43,
0x45, 0x45, 0x44, 0x45, 0x44, 0x10, 0x41, 0x12, 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45,
0x44, 0x10, 0x42, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x4c, 0x45, 0x44,
0x10, 0x43, 0x42, 0x2a, 0x5a, 0x28, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75,
0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x63, 0x76, 0x2f, 0x69, 0x6e,
0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x2f, 0x72, 0x75, 0x6e, 0x3b, 0x72, 0x75, 0x6e, 0x62, 0x06,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescOnce sync.Once
file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescData = file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDesc
)
func file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP() []byte {
file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescOnce.Do(func() {
file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescData)
})
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescData
}
var file_go_chromium_org_luci_cv_internal_run_storage_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes = make([]protoimpl.MessageInfo, 29)
var file_go_chromium_org_luci_cv_internal_run_storage_proto_goTypes = []interface{}{
(Status)(0), // 0: cv.internal.run.Status
(*Trigger)(nil), // 1: cv.internal.run.Trigger
(*Triggers)(nil), // 2: cv.internal.run.Triggers
(*Submission)(nil), // 3: cv.internal.run.Submission
(*Options)(nil), // 4: cv.internal.run.Options
(*LogEntries)(nil), // 5: cv.internal.run.LogEntries
(*LogEntry)(nil), // 6: cv.internal.run.LogEntry
(*Tryjobs)(nil), // 7: cv.internal.run.Tryjobs
(*Tryjob)(nil), // 8: cv.internal.run.Tryjob
(*OngoingLongOps)(nil), // 9: cv.internal.run.OngoingLongOps
(*LogEntry_Created)(nil), // 10: cv.internal.run.LogEntry.Created
(*LogEntry_Started)(nil), // 11: cv.internal.run.LogEntry.Started
(*LogEntry_ConfigChanged)(nil), // 12: cv.internal.run.LogEntry.ConfigChanged
(*LogEntry_TryjobsRequirementUpdated)(nil), // 13: cv.internal.run.LogEntry.TryjobsRequirementUpdated
(*LogEntry_Info)(nil), // 14: cv.internal.run.LogEntry.Info
(*LogEntry_TryjobsUpdated)(nil), // 15: cv.internal.run.LogEntry.TryjobsUpdated
(*LogEntry_TreeChecked)(nil), // 16: cv.internal.run.LogEntry.TreeChecked
(*LogEntry_Waitlisted)(nil), // 17: cv.internal.run.LogEntry.Waitlisted
(*LogEntry_AcquiredSubmitQueue)(nil), // 18: cv.internal.run.LogEntry.AcquiredSubmitQueue
(*LogEntry_ReleasedSubmitQueue)(nil), // 19: cv.internal.run.LogEntry.ReleasedSubmitQueue
(*LogEntry_CLSubmitted)(nil), // 20: cv.internal.run.LogEntry.CLSubmitted
(*LogEntry_SubmissionFailure)(nil), // 21: cv.internal.run.LogEntry.SubmissionFailure
(*LogEntry_RunEnded)(nil), // 22: cv.internal.run.LogEntry.RunEnded
(*OngoingLongOps_Op)(nil), // 23: cv.internal.run.OngoingLongOps.Op
nil, // 24: cv.internal.run.OngoingLongOps.OpsEntry
(*OngoingLongOps_Op_ResetTriggers)(nil), // 25: cv.internal.run.OngoingLongOps.Op.ResetTriggers
(*OngoingLongOps_Op_ExecutePostActionPayload)(nil), // 26: cv.internal.run.OngoingLongOps.Op.ExecutePostActionPayload
(*OngoingLongOps_Op_PostGerritMessage)(nil), // 27: cv.internal.run.OngoingLongOps.Op.PostGerritMessage
(*OngoingLongOps_Op_ResetTriggers_Request)(nil), // 28: cv.internal.run.OngoingLongOps.Op.ResetTriggers.Request
(*OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota)(nil), // 29: cv.internal.run.OngoingLongOps.Op.ExecutePostActionPayload.CreditRunQuota
(*timestamppb.Timestamp)(nil), // 30: google.protobuf.Timestamp
(*v2.Mode)(nil), // 31: cv.config.Mode
(*tryjob.Requirement)(nil), // 32: cv.internal.tryjob.Requirement
(*tryjob.ExecutionState)(nil), // 33: cv.internal.tryjob.ExecutionState
(*tryjob.Definition)(nil), // 34: cv.internal.tryjob.Definition
(tryjob.Status)(0), // 35: cv.internal.tryjob.Status
(*tryjob.Result)(nil), // 36: cv.internal.tryjob.Result
(*eventpb.SubmissionCompleted)(nil), // 37: cv.internal.run.eventpb.SubmissionCompleted
(*tryjob.ExecuteTryjobsPayload)(nil), // 38: cv.internal.tryjob.ExecuteTryjobsPayload
(*v2.ConfigGroup_PostAction)(nil), // 39: cv.config.ConfigGroup.PostAction
(gerrit.Whom)(0), // 40: cv.internal.gerrit.Whom
}
var file_go_chromium_org_luci_cv_internal_run_storage_proto_depIdxs = []int32{
30, // 0: cv.internal.run.Trigger.time:type_name -> google.protobuf.Timestamp
31, // 1: cv.internal.run.Trigger.mode_definition:type_name -> cv.config.Mode
1, // 2: cv.internal.run.Triggers.cq_vote_trigger:type_name -> cv.internal.run.Trigger
1, // 3: cv.internal.run.Triggers.new_patchset_run_trigger:type_name -> cv.internal.run.Trigger
30, // 4: cv.internal.run.Submission.deadline:type_name -> google.protobuf.Timestamp
30, // 5: cv.internal.run.Submission.last_tree_check_time:type_name -> google.protobuf.Timestamp
30, // 6: cv.internal.run.Submission.tree_error_since:type_name -> google.protobuf.Timestamp
6, // 7: cv.internal.run.LogEntries.entries:type_name -> cv.internal.run.LogEntry
30, // 8: cv.internal.run.LogEntry.time:type_name -> google.protobuf.Timestamp
10, // 9: cv.internal.run.LogEntry.created:type_name -> cv.internal.run.LogEntry.Created
11, // 10: cv.internal.run.LogEntry.started:type_name -> cv.internal.run.LogEntry.Started
12, // 11: cv.internal.run.LogEntry.config_changed:type_name -> cv.internal.run.LogEntry.ConfigChanged
13, // 12: cv.internal.run.LogEntry.tryjobs_requirement_updated:type_name -> cv.internal.run.LogEntry.TryjobsRequirementUpdated
15, // 13: cv.internal.run.LogEntry.tryjobs_updated:type_name -> cv.internal.run.LogEntry.TryjobsUpdated
14, // 14: cv.internal.run.LogEntry.info:type_name -> cv.internal.run.LogEntry.Info
16, // 15: cv.internal.run.LogEntry.tree_checked:type_name -> cv.internal.run.LogEntry.TreeChecked
17, // 16: cv.internal.run.LogEntry.waitlisted:type_name -> cv.internal.run.LogEntry.Waitlisted
18, // 17: cv.internal.run.LogEntry.acquired_submit_queue:type_name -> cv.internal.run.LogEntry.AcquiredSubmitQueue
19, // 18: cv.internal.run.LogEntry.released_submit_queue:type_name -> cv.internal.run.LogEntry.ReleasedSubmitQueue
20, // 19: cv.internal.run.LogEntry.cl_submitted:type_name -> cv.internal.run.LogEntry.CLSubmitted
21, // 20: cv.internal.run.LogEntry.submission_failure:type_name -> cv.internal.run.LogEntry.SubmissionFailure
22, // 21: cv.internal.run.LogEntry.run_ended:type_name -> cv.internal.run.LogEntry.RunEnded
32, // 22: cv.internal.run.Tryjobs.requirement:type_name -> cv.internal.tryjob.Requirement
32, // 23: cv.internal.run.Tryjobs.staging_requirement:type_name -> cv.internal.tryjob.Requirement
30, // 24: cv.internal.run.Tryjobs.requirement_computed_at:type_name -> google.protobuf.Timestamp
8, // 25: cv.internal.run.Tryjobs.tryjobs:type_name -> cv.internal.run.Tryjob
30, // 26: cv.internal.run.Tryjobs.cqd_update_time:type_name -> google.protobuf.Timestamp
33, // 27: cv.internal.run.Tryjobs.state:type_name -> cv.internal.tryjob.ExecutionState
34, // 28: cv.internal.run.Tryjob.definition:type_name -> cv.internal.tryjob.Definition
35, // 29: cv.internal.run.Tryjob.status:type_name -> cv.internal.tryjob.Status
36, // 30: cv.internal.run.Tryjob.result:type_name -> cv.internal.tryjob.Result
24, // 31: cv.internal.run.OngoingLongOps.ops:type_name -> cv.internal.run.OngoingLongOps.OpsEntry
8, // 32: cv.internal.run.LogEntry.TryjobsUpdated.tryjobs:type_name -> cv.internal.run.Tryjob
37, // 33: cv.internal.run.LogEntry.SubmissionFailure.event:type_name -> cv.internal.run.eventpb.SubmissionCompleted
30, // 34: cv.internal.run.OngoingLongOps.Op.deadline:type_name -> google.protobuf.Timestamp
25, // 35: cv.internal.run.OngoingLongOps.Op.reset_triggers:type_name -> cv.internal.run.OngoingLongOps.Op.ResetTriggers
38, // 36: cv.internal.run.OngoingLongOps.Op.execute_tryjobs:type_name -> cv.internal.tryjob.ExecuteTryjobsPayload
26, // 37: cv.internal.run.OngoingLongOps.Op.execute_post_action:type_name -> cv.internal.run.OngoingLongOps.Op.ExecutePostActionPayload
27, // 38: cv.internal.run.OngoingLongOps.Op.post_gerrit_message:type_name -> cv.internal.run.OngoingLongOps.Op.PostGerritMessage
23, // 39: cv.internal.run.OngoingLongOps.OpsEntry.value:type_name -> cv.internal.run.OngoingLongOps.Op
28, // 40: cv.internal.run.OngoingLongOps.Op.ResetTriggers.requests:type_name -> cv.internal.run.OngoingLongOps.Op.ResetTriggers.Request
0, // 41: cv.internal.run.OngoingLongOps.Op.ResetTriggers.run_status_if_succeeded:type_name -> cv.internal.run.Status
39, // 42: cv.internal.run.OngoingLongOps.Op.ExecutePostActionPayload.config_action:type_name -> cv.config.ConfigGroup.PostAction
29, // 43: cv.internal.run.OngoingLongOps.Op.ExecutePostActionPayload.credit_run_quota:type_name -> cv.internal.run.OngoingLongOps.Op.ExecutePostActionPayload.CreditRunQuota
40, // 44: cv.internal.run.OngoingLongOps.Op.ResetTriggers.Request.notify:type_name -> cv.internal.gerrit.Whom
40, // 45: cv.internal.run.OngoingLongOps.Op.ResetTriggers.Request.add_to_attention:type_name -> cv.internal.gerrit.Whom
46, // [46:46] is the sub-list for method output_type
46, // [46:46] is the sub-list for method input_type
46, // [46:46] is the sub-list for extension type_name
46, // [46:46] is the sub-list for extension extendee
0, // [0:46] is the sub-list for field type_name
}
func init() { file_go_chromium_org_luci_cv_internal_run_storage_proto_init() }
func file_go_chromium_org_luci_cv_internal_run_storage_proto_init() {
if File_go_chromium_org_luci_cv_internal_run_storage_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Trigger); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Triggers); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Submission); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Options); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntries); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Tryjobs); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Tryjob); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OngoingLongOps); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_Created); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_Started); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_ConfigChanged); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_TryjobsRequirementUpdated); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_Info); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_TryjobsUpdated); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_TreeChecked); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_Waitlisted); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_AcquiredSubmitQueue); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_ReleasedSubmitQueue); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_CLSubmitted); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_SubmissionFailure); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*LogEntry_RunEnded); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OngoingLongOps_Op); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OngoingLongOps_Op_ResetTriggers); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OngoingLongOps_Op_ExecutePostActionPayload); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OngoingLongOps_Op_PostGerritMessage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OngoingLongOps_Op_ResetTriggers_Request); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[5].OneofWrappers = []interface{}{
(*LogEntry_Created_)(nil),
(*LogEntry_Started_)(nil),
(*LogEntry_ConfigChanged_)(nil),
(*LogEntry_TryjobsRequirementUpdated_)(nil),
(*LogEntry_TryjobsUpdated_)(nil),
(*LogEntry_Info_)(nil),
(*LogEntry_TreeChecked_)(nil),
(*LogEntry_Waitlisted_)(nil),
(*LogEntry_AcquiredSubmitQueue_)(nil),
(*LogEntry_ReleasedSubmitQueue_)(nil),
(*LogEntry_ClSubmitted)(nil),
(*LogEntry_SubmissionFailure_)(nil),
(*LogEntry_RunEnded_)(nil),
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[22].OneofWrappers = []interface{}{
(*OngoingLongOps_Op_PostStartMessage)(nil),
(*OngoingLongOps_Op_ResetTriggers_)(nil),
(*OngoingLongOps_Op_ExecuteTryjobs)(nil),
(*OngoingLongOps_Op_ExecutePostAction)(nil),
(*OngoingLongOps_Op_PostGerritMessage_)(nil),
}
file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes[25].OneofWrappers = []interface{}{
(*OngoingLongOps_Op_ExecutePostActionPayload_ConfigAction)(nil),
(*OngoingLongOps_Op_ExecutePostActionPayload_CreditRunQuota_)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDesc,
NumEnums: 1,
NumMessages: 29,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_go_chromium_org_luci_cv_internal_run_storage_proto_goTypes,
DependencyIndexes: file_go_chromium_org_luci_cv_internal_run_storage_proto_depIdxs,
EnumInfos: file_go_chromium_org_luci_cv_internal_run_storage_proto_enumTypes,
MessageInfos: file_go_chromium_org_luci_cv_internal_run_storage_proto_msgTypes,
}.Build()
File_go_chromium_org_luci_cv_internal_run_storage_proto = out.File
file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDesc = nil
file_go_chromium_org_luci_cv_internal_run_storage_proto_goTypes = nil
file_go_chromium_org_luci_cv_internal_run_storage_proto_depIdxs = nil
}