blob: 7fc20d9a7aab1cdcf519e0e17556bc59f775c855 [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.27.1
// protoc v3.17.3
// source: go.chromium.org/luci/dm/api/distributor/jobsim/task.proto
package jobsim
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
durationpb "google.golang.org/protobuf/types/known/durationpb"
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)
)
// Phrase is a task to do. It consists of zero or more stages, followed by
// an optional ReturnStage.
type Phrase struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Seed should be selected via a fair dice roll (using a d1.84e19).
Seed int64 `protobuf:"varint,2,opt,name=seed,proto3" json:"seed,omitempty"`
Stages []*Stage `protobuf:"bytes,3,rep,name=stages,proto3" json:"stages,omitempty"`
ReturnStage *ReturnStage `protobuf:"bytes,4,opt,name=return_stage,json=returnStage,proto3" json:"return_stage,omitempty"`
}
func (x *Phrase) Reset() {
*x = Phrase{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Phrase) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Phrase) ProtoMessage() {}
func (x *Phrase) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 Phrase.ProtoReflect.Descriptor instead.
func (*Phrase) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{0}
}
func (x *Phrase) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Phrase) GetSeed() int64 {
if x != nil {
return x.Seed
}
return 0
}
func (x *Phrase) GetStages() []*Stage {
if x != nil {
return x.Stages
}
return nil
}
func (x *Phrase) GetReturnStage() *ReturnStage {
if x != nil {
return x.ReturnStage
}
return nil
}
// ReturnStage indicates that the Phrase should return the numerical value
// 'retval' as the result of the current Phrase. If expiration is provided,
// it will set that as the expiration timestamp for the provided retval.
type ReturnStage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Retval int64 `protobuf:"varint,1,opt,name=retval,proto3" json:"retval,omitempty"`
Expiration *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=expiration,proto3" json:"expiration,omitempty"`
}
func (x *ReturnStage) Reset() {
*x = ReturnStage{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ReturnStage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ReturnStage) ProtoMessage() {}
func (x *ReturnStage) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 ReturnStage.ProtoReflect.Descriptor instead.
func (*ReturnStage) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{1}
}
func (x *ReturnStage) GetRetval() int64 {
if x != nil {
return x.Retval
}
return 0
}
func (x *ReturnStage) GetExpiration() *timestamppb.Timestamp {
if x != nil {
return x.Expiration
}
return nil
}
// Stage is the union of the following stage types:
// * FailureStage
// * StallStage
// * DepsStage
type Stage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to StageType:
// *Stage_Failure
// *Stage_Stall
// *Stage_Deps
StageType isStage_StageType `protobuf_oneof:"stage_type"`
}
func (x *Stage) Reset() {
*x = Stage{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Stage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Stage) ProtoMessage() {}
func (x *Stage) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 Stage.ProtoReflect.Descriptor instead.
func (*Stage) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{2}
}
func (m *Stage) GetStageType() isStage_StageType {
if m != nil {
return m.StageType
}
return nil
}
func (x *Stage) GetFailure() *FailureStage {
if x, ok := x.GetStageType().(*Stage_Failure); ok {
return x.Failure
}
return nil
}
func (x *Stage) GetStall() *StallStage {
if x, ok := x.GetStageType().(*Stage_Stall); ok {
return x.Stall
}
return nil
}
func (x *Stage) GetDeps() *DepsStage {
if x, ok := x.GetStageType().(*Stage_Deps); ok {
return x.Deps
}
return nil
}
type isStage_StageType interface {
isStage_StageType()
}
type Stage_Failure struct {
Failure *FailureStage `protobuf:"bytes,1,opt,name=failure,proto3,oneof"`
}
type Stage_Stall struct {
Stall *StallStage `protobuf:"bytes,2,opt,name=stall,proto3,oneof"`
}
type Stage_Deps struct {
Deps *DepsStage `protobuf:"bytes,3,opt,name=deps,proto3,oneof"`
}
func (*Stage_Failure) isStage_StageType() {}
func (*Stage_Stall) isStage_StageType() {}
func (*Stage_Deps) isStage_StageType() {}
// FailureStage is the /chance/ to fail with a certain liklihood. The chance
// is calculated using the current Phrase's 'seed' with the "math/rand" package,
// The seed is either 0 (unspecified), or the value of the 'seed' property for
// the currently running phrase.
//
// 0 is a 0-percent chance of failure.
// 1 is a 100-percent chance of failure.
type FailureStage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Chance float32 `protobuf:"fixed32,1,opt,name=chance,proto3" json:"chance,omitempty"`
}
func (x *FailureStage) Reset() {
*x = FailureStage{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *FailureStage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*FailureStage) ProtoMessage() {}
func (x *FailureStage) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 FailureStage.ProtoReflect.Descriptor instead.
func (*FailureStage) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{3}
}
func (x *FailureStage) GetChance() float32 {
if x != nil {
return x.Chance
}
return 0
}
// StallStage delays the phrase for the provided Duration. This could be used
// to simulate long-running tasks (like builds).
type StallStage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Delay *durationpb.Duration `protobuf:"bytes,1,opt,name=delay,proto3" json:"delay,omitempty"`
}
func (x *StallStage) Reset() {
*x = StallStage{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *StallStage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*StallStage) ProtoMessage() {}
func (x *StallStage) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 StallStage.ProtoReflect.Descriptor instead.
func (*StallStage) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{4}
}
func (x *StallStage) GetDelay() *durationpb.Duration {
if x != nil {
return x.Delay
}
return nil
}
// DepsStage represents the opportunity to depend on 1 or more dependencies
// simultaneously.
type DepsStage struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Deps []*Dependency `protobuf:"bytes,1,rep,name=deps,proto3" json:"deps,omitempty"`
}
func (x *DepsStage) Reset() {
*x = DepsStage{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *DepsStage) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*DepsStage) ProtoMessage() {}
func (x *DepsStage) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 DepsStage.ProtoReflect.Descriptor instead.
func (*DepsStage) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{5}
}
func (x *DepsStage) GetDeps() []*Dependency {
if x != nil {
return x.Deps
}
return nil
}
// Dependency represents a nested Phrase that this Phrase depends on.
type Dependency struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// shards append [1], [2], [3], etc. to the "name"s of the dependencies, making
// them unique quests.
Shards uint64 `protobuf:"varint,1,opt,name=shards,proto3" json:"shards,omitempty"`
// Types that are assignable to AttemptStrategy:
// *Dependency_Attempts
// *Dependency_Retries
AttemptStrategy isDependency_AttemptStrategy `protobuf_oneof:"attempt_strategy"`
// MixSeed will blend the current seed with the seed in the phrase seed,
// when depending on it.
//
// mix_seed phrase.seed==0 -> dep uses "random" seed
// mix_seed phrase.seed!=0 -> dep uses blend(current seed, phrase.seed)
// !mix_seed phrase.seed==0 -> dep uses current seed
// !mix_seed phrase.seed!=0 -> dep uses phrase.seed
MixSeed bool `protobuf:"varint,4,opt,name=mix_seed,json=mixSeed,proto3" json:"mix_seed,omitempty"`
Phrase *Phrase `protobuf:"bytes,5,opt,name=phrase,proto3" json:"phrase,omitempty"`
}
func (x *Dependency) Reset() {
*x = Dependency{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Dependency) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Dependency) ProtoMessage() {}
func (x *Dependency) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 Dependency.ProtoReflect.Descriptor instead.
func (*Dependency) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{6}
}
func (x *Dependency) GetShards() uint64 {
if x != nil {
return x.Shards
}
return 0
}
func (m *Dependency) GetAttemptStrategy() isDependency_AttemptStrategy {
if m != nil {
return m.AttemptStrategy
}
return nil
}
func (x *Dependency) GetAttempts() *SparseRange {
if x, ok := x.GetAttemptStrategy().(*Dependency_Attempts); ok {
return x.Attempts
}
return nil
}
func (x *Dependency) GetRetries() uint32 {
if x, ok := x.GetAttemptStrategy().(*Dependency_Retries); ok {
return x.Retries
}
return 0
}
func (x *Dependency) GetMixSeed() bool {
if x != nil {
return x.MixSeed
}
return false
}
func (x *Dependency) GetPhrase() *Phrase {
if x != nil {
return x.Phrase
}
return nil
}
type isDependency_AttemptStrategy interface {
isDependency_AttemptStrategy()
}
type Dependency_Attempts struct {
Attempts *SparseRange `protobuf:"bytes,2,opt,name=attempts,proto3,oneof"`
}
type Dependency_Retries struct {
Retries uint32 `protobuf:"varint,3,opt,name=retries,proto3,oneof"`
}
func (*Dependency_Attempts) isDependency_AttemptStrategy() {}
func (*Dependency_Retries) isDependency_AttemptStrategy() {}
// SparseRange allows the expression of mixed partial ranges like [1,3-10,19,21].
type SparseRange struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Items []*RangeItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
}
func (x *SparseRange) Reset() {
*x = SparseRange{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SparseRange) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SparseRange) ProtoMessage() {}
func (x *SparseRange) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 SparseRange.ProtoReflect.Descriptor instead.
func (*SparseRange) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{7}
}
func (x *SparseRange) GetItems() []*RangeItem {
if x != nil {
return x.Items
}
return nil
}
// RangeItem is either a single number or a Range.
type RangeItem struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Types that are assignable to RangeItem:
// *RangeItem_Single
// *RangeItem_Range
RangeItem isRangeItem_RangeItem `protobuf_oneof:"range_item"`
}
func (x *RangeItem) Reset() {
*x = RangeItem{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *RangeItem) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*RangeItem) ProtoMessage() {}
func (x *RangeItem) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 RangeItem.ProtoReflect.Descriptor instead.
func (*RangeItem) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{8}
}
func (m *RangeItem) GetRangeItem() isRangeItem_RangeItem {
if m != nil {
return m.RangeItem
}
return nil
}
func (x *RangeItem) GetSingle() uint32 {
if x, ok := x.GetRangeItem().(*RangeItem_Single); ok {
return x.Single
}
return 0
}
func (x *RangeItem) GetRange() *Range {
if x, ok := x.GetRangeItem().(*RangeItem_Range); ok {
return x.Range
}
return nil
}
type isRangeItem_RangeItem interface {
isRangeItem_RangeItem()
}
type RangeItem_Single struct {
Single uint32 `protobuf:"varint,1,opt,name=single,proto3,oneof"`
}
type RangeItem_Range struct {
Range *Range `protobuf:"bytes,2,opt,name=range,proto3,oneof"`
}
func (*RangeItem_Single) isRangeItem_RangeItem() {}
func (*RangeItem_Range) isRangeItem_RangeItem() {}
// Range represents a single low-high pair (e.g. [3-40])
type Range struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
Low uint32 `protobuf:"varint,1,opt,name=low,proto3" json:"low,omitempty"`
High uint32 `protobuf:"varint,2,opt,name=high,proto3" json:"high,omitempty"`
}
func (x *Range) Reset() {
*x = Range{}
if protoimpl.UnsafeEnabled {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Range) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Range) ProtoMessage() {}
func (x *Range) ProtoReflect() protoreflect.Message {
mi := &file_go_chromium_org_luci_dm_api_distributor_jobsim_task_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 Range.ProtoReflect.Descriptor instead.
func (*Range) Descriptor() ([]byte, []int) {
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP(), []int{9}
}
func (x *Range) GetLow() uint32 {
if x != nil {
return x.Low
}
return 0
}
func (x *Range) GetHigh() uint32 {
if x != nil {
return x.High
}
return 0
}
var File_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto protoreflect.FileDescriptor
var file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDesc = []byte{
0x0a, 0x39, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d, 0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72,
0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x64, 0x6d, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x64, 0x69,
0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x2f, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d,
0x2f, 0x74, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x6a, 0x6f, 0x62,
0x73, 0x69, 0x6d, 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, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8f, 0x01, 0x0a, 0x06, 0x50, 0x68, 0x72, 0x61, 0x73, 0x65, 0x12,
0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e,
0x61, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x65, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
0x03, 0x52, 0x04, 0x73, 0x65, 0x65, 0x64, 0x12, 0x25, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x67, 0x65,
0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d,
0x2e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x06, 0x73, 0x74, 0x61, 0x67, 0x65, 0x73, 0x12, 0x36,
0x0a, 0x0c, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x04,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x2e, 0x52, 0x65,
0x74, 0x75, 0x72, 0x6e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x0b, 0x72, 0x65, 0x74, 0x75, 0x72,
0x6e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x22, 0x61, 0x0a, 0x0b, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e,
0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x74, 0x76, 0x61, 0x6c, 0x18,
0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x65, 0x74, 0x76, 0x61, 0x6c, 0x12, 0x3a, 0x0a,
0x0a, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 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, 0x0a, 0x65,
0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9c, 0x01, 0x0a, 0x05, 0x53, 0x74,
0x61, 0x67, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x2e, 0x46, 0x61,
0x69, 0x6c, 0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x07, 0x66, 0x61,
0x69, 0x6c, 0x75, 0x72, 0x65, 0x12, 0x2a, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x6c, 0x6c, 0x18, 0x02,
0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x2e, 0x53, 0x74,
0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x05, 0x73, 0x74, 0x61, 0x6c,
0x6c, 0x12, 0x27, 0x0a, 0x04, 0x64, 0x65, 0x70, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x11, 0x2e, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x2e, 0x44, 0x65, 0x70, 0x73, 0x53, 0x74, 0x61,
0x67, 0x65, 0x48, 0x00, 0x52, 0x04, 0x64, 0x65, 0x70, 0x73, 0x42, 0x0c, 0x0a, 0x0a, 0x73, 0x74,
0x61, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x22, 0x26, 0x0a, 0x0c, 0x46, 0x61, 0x69, 0x6c,
0x75, 0x72, 0x65, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x68, 0x61, 0x6e,
0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x06, 0x63, 0x68, 0x61, 0x6e, 0x63, 0x65,
0x22, 0x3d, 0x0a, 0x0a, 0x53, 0x74, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x2f,
0x0a, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x05, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x22,
0x33, 0x0a, 0x09, 0x44, 0x65, 0x70, 0x73, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x04,
0x64, 0x65, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6a, 0x6f, 0x62,
0x73, 0x69, 0x6d, 0x2e, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x04,
0x64, 0x65, 0x70, 0x73, 0x22, 0xca, 0x01, 0x0a, 0x0a, 0x44, 0x65, 0x70, 0x65, 0x6e, 0x64, 0x65,
0x6e, 0x63, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x18, 0x01, 0x20,
0x01, 0x28, 0x04, 0x52, 0x06, 0x73, 0x68, 0x61, 0x72, 0x64, 0x73, 0x12, 0x31, 0x0a, 0x08, 0x61,
0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e,
0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x2e, 0x53, 0x70, 0x61, 0x72, 0x73, 0x65, 0x52, 0x61, 0x6e,
0x67, 0x65, 0x48, 0x00, 0x52, 0x08, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x73, 0x12, 0x1a,
0x0a, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x48,
0x00, 0x52, 0x07, 0x72, 0x65, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12, 0x19, 0x0a, 0x08, 0x6d, 0x69,
0x78, 0x5f, 0x73, 0x65, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x6d, 0x69,
0x78, 0x53, 0x65, 0x65, 0x64, 0x12, 0x26, 0x0a, 0x06, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x18,
0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x2e, 0x50,
0x68, 0x72, 0x61, 0x73, 0x65, 0x52, 0x06, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x42, 0x12, 0x0a,
0x10, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x5f, 0x73, 0x74, 0x72, 0x61, 0x74, 0x65, 0x67,
0x79, 0x22, 0x36, 0x0a, 0x0b, 0x53, 0x70, 0x61, 0x72, 0x73, 0x65, 0x52, 0x61, 0x6e, 0x67, 0x65,
0x12, 0x27, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
0x11, 0x2e, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x49, 0x74,
0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x5a, 0x0a, 0x09, 0x52, 0x61, 0x6e,
0x67, 0x65, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x18, 0x0a, 0x06, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65,
0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x06, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65,
0x12, 0x25, 0x0a, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x0d, 0x2e, 0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x48, 0x00,
0x52, 0x05, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x42, 0x0c, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x67, 0x65,
0x5f, 0x69, 0x74, 0x65, 0x6d, 0x22, 0x2d, 0x0a, 0x05, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x10,
0x0a, 0x03, 0x6c, 0x6f, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6c, 0x6f, 0x77,
0x12, 0x12, 0x0a, 0x04, 0x68, 0x69, 0x67, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04,
0x68, 0x69, 0x67, 0x68, 0x42, 0x30, 0x5a, 0x2e, 0x67, 0x6f, 0x2e, 0x63, 0x68, 0x72, 0x6f, 0x6d,
0x69, 0x75, 0x6d, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x6c, 0x75, 0x63, 0x69, 0x2f, 0x64, 0x6d, 0x2f,
0x61, 0x70, 0x69, 0x2f, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x6f, 0x72, 0x2f,
0x6a, 0x6f, 0x62, 0x73, 0x69, 0x6d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescOnce sync.Once
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescData = file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDesc
)
func file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescGZIP() []byte {
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescOnce.Do(func() {
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescData = protoimpl.X.CompressGZIP(file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescData)
})
return file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDescData
}
var file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
var file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_goTypes = []interface{}{
(*Phrase)(nil), // 0: jobsim.Phrase
(*ReturnStage)(nil), // 1: jobsim.ReturnStage
(*Stage)(nil), // 2: jobsim.Stage
(*FailureStage)(nil), // 3: jobsim.FailureStage
(*StallStage)(nil), // 4: jobsim.StallStage
(*DepsStage)(nil), // 5: jobsim.DepsStage
(*Dependency)(nil), // 6: jobsim.Dependency
(*SparseRange)(nil), // 7: jobsim.SparseRange
(*RangeItem)(nil), // 8: jobsim.RangeItem
(*Range)(nil), // 9: jobsim.Range
(*timestamppb.Timestamp)(nil), // 10: google.protobuf.Timestamp
(*durationpb.Duration)(nil), // 11: google.protobuf.Duration
}
var file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_depIdxs = []int32{
2, // 0: jobsim.Phrase.stages:type_name -> jobsim.Stage
1, // 1: jobsim.Phrase.return_stage:type_name -> jobsim.ReturnStage
10, // 2: jobsim.ReturnStage.expiration:type_name -> google.protobuf.Timestamp
3, // 3: jobsim.Stage.failure:type_name -> jobsim.FailureStage
4, // 4: jobsim.Stage.stall:type_name -> jobsim.StallStage
5, // 5: jobsim.Stage.deps:type_name -> jobsim.DepsStage
11, // 6: jobsim.StallStage.delay:type_name -> google.protobuf.Duration
6, // 7: jobsim.DepsStage.deps:type_name -> jobsim.Dependency
7, // 8: jobsim.Dependency.attempts:type_name -> jobsim.SparseRange
0, // 9: jobsim.Dependency.phrase:type_name -> jobsim.Phrase
8, // 10: jobsim.SparseRange.items:type_name -> jobsim.RangeItem
9, // 11: jobsim.RangeItem.range:type_name -> jobsim.Range
12, // [12:12] is the sub-list for method output_type
12, // [12:12] is the sub-list for method input_type
12, // [12:12] is the sub-list for extension type_name
12, // [12:12] is the sub-list for extension extendee
0, // [0:12] is the sub-list for field type_name
}
func init() { file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_init() }
func file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_init() {
if File_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto != nil {
return
}
if !protoimpl.UnsafeEnabled {
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Phrase); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ReturnStage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Stage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*FailureStage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*StallStage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*DepsStage); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Dependency); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SparseRange); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*RangeItem); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Range); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[2].OneofWrappers = []interface{}{
(*Stage_Failure)(nil),
(*Stage_Stall)(nil),
(*Stage_Deps)(nil),
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[6].OneofWrappers = []interface{}{
(*Dependency_Attempts)(nil),
(*Dependency_Retries)(nil),
}
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes[8].OneofWrappers = []interface{}{
(*RangeItem_Single)(nil),
(*RangeItem_Range)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDesc,
NumEnums: 0,
NumMessages: 10,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_goTypes,
DependencyIndexes: file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_depIdxs,
MessageInfos: file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_msgTypes,
}.Build()
File_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto = out.File
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_rawDesc = nil
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_goTypes = nil
file_go_chromium_org_luci_dm_api_distributor_jobsim_task_proto_depIdxs = nil
}