| // 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 |
| } |