blob: 7e5945eec83fbf686ad3705fb454c0d44b2ebf70 [file] [log] [blame]
// Copyright 2020 The LUCI Authors.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.26.0
// protoc v3.17.0
// source: go.chromium.org/luci/cv/internal/run/storage.proto
package run
import (
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"`
// Additional label is recorded in case applicable ConfigGroup had additional
// modes, e.g. for QUICK_DRY_RUN mode.
AdditionalLabel string `protobuf:"bytes,5,opt,name=additional_label,json=additionalLabel,proto3" json:"additional_label,omitempty"`
// Triggering user email if known.
//
// Gerrit doesn't guarantee that every user has set their preferred email,
// but LUCI ACLs are based entirely on user emails. Thus, Runs with the email
// unset are quickly aborted by CQDaemon.
//
// TODO(tandrii): once CQDaemon is deleted, require email to start a Run,
// and remove Gerrit-specific gerrit_account_id.
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) GetAdditionalLabel() string {
if x != nil {
return x.AdditionalLabel
}
return ""
}
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
}
// Submission describes the current 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"`
// 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 Tree status was last fetched.
LastTreeCheckTime *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=last_tree_check_time,json=lastTreeCheckTime,proto3" json:"last_tree_check_time,omitempty"`
}
func (x *Submission) Reset() {
*x = Submission{}
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 *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[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 Submission.ProtoReflect.Descriptor instead.
func (*Submission) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_cv_internal_run_storage_proto_rawDescGZIP(), []int{1}
}
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) GetTreeOpen() bool {
if x != nil {
return x.TreeOpen
}
return false
}
func (x *Submission) GetLastTreeCheckTime() *timestamppb.Timestamp {
if x != nil {
return x.LastTreeCheckTime
}
return nil
}
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, 0x06, 0x63, 0x76, 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, 0x22, 0xba, 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, 0x29, 0x0a,
0x10, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x5f, 0x6c, 0x61, 0x62, 0x65,
0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x61, 0x64, 0x64, 0x69, 0x74, 0x69, 0x6f,
0x6e, 0x61, 0x6c, 0x4c, 0x61, 0x62, 0x65, 0x6c, 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, 0x22, 0xfe, 0x01, 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, 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, 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, 2)
var file_go_chromium_org_luci_cv_internal_run_storage_proto_goTypes = []interface{}{
(Status)(0), // 0: cv.run.Status
(*Trigger)(nil), // 1: cv.run.Trigger
(*Submission)(nil), // 2: cv.run.Submission
(*timestamppb.Timestamp)(nil), // 3: google.protobuf.Timestamp
}
var file_go_chromium_org_luci_cv_internal_run_storage_proto_depIdxs = []int32{
3, // 0: cv.run.Trigger.time:type_name -> google.protobuf.Timestamp
3, // 1: cv.run.Submission.deadline:type_name -> google.protobuf.Timestamp
3, // 2: cv.run.Submission.last_tree_check_time:type_name -> google.protobuf.Timestamp
3, // [3:3] is the sub-list for method output_type
3, // [3:3] is the sub-list for method input_type
3, // [3:3] is the sub-list for extension type_name
3, // [3:3] is the sub-list for extension extendee
0, // [0:3] 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.(*Submission); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return 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: 2,
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
}