jobsim

package
v0.0.0-...-678bb0e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 8, 2017 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package jobsim is a generated protocol buffer package.

It is generated from these files:

github.com/luci/luci-go/dm/api/distributor/jobsim/jobsim.proto
github.com/luci/luci-go/dm/api/distributor/jobsim/result.proto
github.com/luci/luci-go/dm/api/distributor/jobsim/task.proto

It has these top-level messages:

Config
Result
Phrase
ReturnStage
Stage
FailureStage
StallStage
DepsStage
Dependency
SparseRange
RangeItem
Range

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// Pool specifies the unique 'pool' name for this jobsim configuration. This
	// will be used to namespace jobsim objects in the datastore, and can be used
	// to demonstrate cross-distributor dependencies (by having one pool's jobs
	// depend on another pool's results).
	Pool string `protobuf:"bytes,1,opt,name=pool" json:"pool,omitempty"`
	// DoPollback controls whether or not this configuration will force DM to
	// poll back when recieving a HandleNotification. If this is true, then
	// HandleNotification will return (nil, nil), and DM will call GetStatus
	// at some later point. If this is false, then HandleNotification will
	// directly return the job's status.
	DoPollback bool `protobuf:"varint,2,opt,name=do_pollback,json=doPollback" json:"do_pollback,omitempty"`
}

Config is ONLY for testing purposes in dm/service. However, because of the way that the distributor proto works it needs to be included in the main distributor.proto file. For consistency, this jobsim proto lives here.

func (*Config) Descriptor

func (*Config) Descriptor() ([]byte, []int)

func (*Config) GetDoPollback

func (m *Config) GetDoPollback() bool

func (*Config) GetPool

func (m *Config) GetPool() string

func (*Config) ProtoMessage

func (*Config) ProtoMessage()

func (*Config) Reset

func (m *Config) Reset()

func (*Config) String

func (m *Config) String() string

type Dependency

type Dependency struct {
	// 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" json:"shards,omitempty"`
	// Types that are valid to be assigned 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" json:"mix_seed,omitempty"`
	Phrase  *Phrase `protobuf:"bytes,5,opt,name=phrase" json:"phrase,omitempty"`
}

Dependency represents a nested Phrase that this Phrase depends on.

func (*Dependency) Descriptor

func (*Dependency) Descriptor() ([]byte, []int)

func (*Dependency) GetAttemptStrategy

func (m *Dependency) GetAttemptStrategy() isDependency_AttemptStrategy

func (*Dependency) GetAttempts

func (m *Dependency) GetAttempts() *SparseRange

func (*Dependency) GetMixSeed

func (m *Dependency) GetMixSeed() bool

func (*Dependency) GetPhrase

func (m *Dependency) GetPhrase() *Phrase

func (*Dependency) GetRetries

func (m *Dependency) GetRetries() uint32

func (*Dependency) GetShards

func (m *Dependency) GetShards() uint64

func (*Dependency) Normalize

func (d *Dependency) Normalize() error

Normalize checks Dependency for errors and converts it to its normalized form.

func (*Dependency) ProtoMessage

func (*Dependency) ProtoMessage()

func (*Dependency) Reset

func (m *Dependency) Reset()

func (*Dependency) Seed

func (d *Dependency) Seed(rnd *rand.Rand, seed, round int64)

Seed rewrites this dependency's Seed value

func (*Dependency) String

func (m *Dependency) String() string

func (*Dependency) XXX_OneofFuncs

func (*Dependency) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type Dependency_Attempts

type Dependency_Attempts struct {
	Attempts *SparseRange `protobuf:"bytes,2,opt,name=attempts,oneof"`
}

type Dependency_Retries

type Dependency_Retries struct {
	Retries uint32 `protobuf:"varint,3,opt,name=retries,oneof"`
}

type DepsStage

type DepsStage struct {
	Deps []*Dependency `protobuf:"bytes,1,rep,name=deps" json:"deps,omitempty"`
}

DepsStage represents the opportunity to depend on 1 or more dependencies simultaneously.

func (*DepsStage) Descriptor

func (*DepsStage) Descriptor() ([]byte, []int)

func (*DepsStage) ExpandShards

func (s *DepsStage) ExpandShards()

ExpandShards expands any dependencies that have non-zero Shards values.

func (*DepsStage) GetDeps

func (m *DepsStage) GetDeps() []*Dependency

func (*DepsStage) Normalize

func (d *DepsStage) Normalize() error

Normalize checks DepsStage for errors and converts it to its normalized form.

func (*DepsStage) ProtoMessage

func (*DepsStage) ProtoMessage()

func (*DepsStage) Reset

func (m *DepsStage) Reset()

func (*DepsStage) String

func (m *DepsStage) String() string

type FailureStage

type FailureStage struct {
	Chance float32 `protobuf:"fixed32,1,opt,name=chance" json:"chance,omitempty"`
}

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.

func (*FailureStage) Descriptor

func (*FailureStage) Descriptor() ([]byte, []int)

func (*FailureStage) GetChance

func (m *FailureStage) GetChance() float32

func (*FailureStage) Normalize

func (f *FailureStage) Normalize() error

Normalize checks FailureStage for errors and converts it to its normalized form.

func (*FailureStage) ProtoMessage

func (*FailureStage) ProtoMessage()

func (*FailureStage) Reset

func (m *FailureStage) Reset()

func (*FailureStage) String

func (m *FailureStage) String() string

type Phrase

type Phrase struct {
	Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// Seed should be selected via a fair dice roll (using a d1.84e19).
	Seed        int64        `protobuf:"varint,2,opt,name=seed" json:"seed,omitempty"`
	Stages      []*Stage     `protobuf:"bytes,3,rep,name=stages" json:"stages,omitempty"`
	ReturnStage *ReturnStage `protobuf:"bytes,4,opt,name=return_stage,json=returnStage" json:"return_stage,omitempty"`
}

Phrase is a task to do. It consists of zero or more stages, followed by an optional ReturnStage.

func (*Phrase) Descriptor

func (*Phrase) Descriptor() ([]byte, []int)

func (*Phrase) FromProperty

func (p *Phrase) FromProperty(prop datastore.Property) error

FromProperty implements datastore.PropertyConverter. It parses a '[]byte' into an embedded 'Phrase' when used with the "github.com/luci/gae" library.

func (*Phrase) GetName

func (m *Phrase) GetName() string

func (*Phrase) GetReturnStage

func (m *Phrase) GetReturnStage() *ReturnStage

func (*Phrase) GetSeed

func (m *Phrase) GetSeed() int64

func (*Phrase) GetStages

func (m *Phrase) GetStages() []*Stage

func (*Phrase) Normalize

func (p *Phrase) Normalize() error

Normalize checks Phrase for errors and converts it to its normalized form.

func (*Phrase) ProtoMessage

func (*Phrase) ProtoMessage()

func (*Phrase) Reset

func (m *Phrase) Reset()

func (*Phrase) String

func (m *Phrase) String() string

func (*Phrase) ToProperty

func (p *Phrase) ToProperty() (prop datastore.Property, err error)

ToProperty implements datastore.PropertyConverter. It causes an embedded 'Phrase' to serialize to an unindexed '[]byte' when used with the "github.com/luci/gae" library.

type Range

type Range struct {
	Low  uint32 `protobuf:"varint,1,opt,name=low" json:"low,omitempty"`
	High uint32 `protobuf:"varint,2,opt,name=high" json:"high,omitempty"`
}

Range represents a single low-high pair (e.g. [3-40])

func (*Range) Descriptor

func (*Range) Descriptor() ([]byte, []int)

func (*Range) GetHigh

func (m *Range) GetHigh() uint32

func (*Range) GetLow

func (m *Range) GetLow() uint32

func (*Range) Normalize

func (r *Range) Normalize() error

Normalize checks Range for errors and converts it to its normalized form.

func (*Range) ProtoMessage

func (*Range) ProtoMessage()

func (*Range) Reset

func (m *Range) Reset()

func (*Range) String

func (m *Range) String() string

type RangeItem

type RangeItem struct {
	// Types that are valid to be assigned to RangeItem:
	//	*RangeItem_Single
	//	*RangeItem_Range
	RangeItem isRangeItem_RangeItem `protobuf_oneof:"range_item"`
}

RangeItem is either a single number or a Range.

func (*RangeItem) Descriptor

func (*RangeItem) Descriptor() ([]byte, []int)

func (*RangeItem) GetRange

func (m *RangeItem) GetRange() *Range

func (*RangeItem) GetRangeItem

func (m *RangeItem) GetRangeItem() isRangeItem_RangeItem

func (*RangeItem) GetSingle

func (m *RangeItem) GetSingle() uint32

func (*RangeItem) ProtoMessage

func (*RangeItem) ProtoMessage()

func (*RangeItem) Reset

func (m *RangeItem) Reset()

func (*RangeItem) String

func (m *RangeItem) String() string

func (*RangeItem) XXX_OneofFuncs

func (*RangeItem) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type RangeItem_Range

type RangeItem_Range struct {
	Range *Range `protobuf:"bytes,2,opt,name=range,oneof"`
}

type RangeItem_Single

type RangeItem_Single struct {
	Single uint32 `protobuf:"varint,1,opt,name=single,oneof"`
}

type Result

type Result struct {
	Success bool  `protobuf:"varint,1,opt,name=success" json:"success,omitempty"`
	Value   int64 `protobuf:"varint,2,opt,name=value" json:"value,omitempty"`
}

Result is the jobsim distributor result object used for executions.

func (*Result) Descriptor

func (*Result) Descriptor() ([]byte, []int)

func (*Result) GetSuccess

func (m *Result) GetSuccess() bool

func (*Result) GetValue

func (m *Result) GetValue() int64

func (*Result) ProtoMessage

func (*Result) ProtoMessage()

func (*Result) Reset

func (m *Result) Reset()

func (*Result) String

func (m *Result) String() string

type ReturnStage

type ReturnStage struct {
	Retval     int64                      `protobuf:"varint,1,opt,name=retval" json:"retval,omitempty"`
	Expiration *google_protobuf.Timestamp `protobuf:"bytes,2,opt,name=expiration" json:"expiration,omitempty"`
}

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.

func (*ReturnStage) Descriptor

func (*ReturnStage) Descriptor() ([]byte, []int)

func (*ReturnStage) GetExpiration

func (m *ReturnStage) GetExpiration() *google_protobuf.Timestamp

func (*ReturnStage) GetRetval

func (m *ReturnStage) GetRetval() int64

func (*ReturnStage) ProtoMessage

func (*ReturnStage) ProtoMessage()

func (*ReturnStage) Reset

func (m *ReturnStage) Reset()

func (*ReturnStage) String

func (m *ReturnStage) String() string

type SparseRange

type SparseRange struct {
	Items []*RangeItem `protobuf:"bytes,1,rep,name=items" json:"items,omitempty"`
}

SparseRange allows the expression of mixed partial ranges like [1,3-10,19,21].

func (*SparseRange) Descriptor

func (*SparseRange) Descriptor() ([]byte, []int)

func (*SparseRange) GetItems

func (m *SparseRange) GetItems() []*RangeItem

func (*SparseRange) Normalize

func (s *SparseRange) Normalize() error

Normalize checks SparseRange for errors and converts it to its normalized form.

func (*SparseRange) ProtoMessage

func (*SparseRange) ProtoMessage()

func (*SparseRange) Reset

func (m *SparseRange) Reset()

func (*SparseRange) String

func (m *SparseRange) String() string

func (*SparseRange) ToSlice

func (s *SparseRange) ToSlice() (ret []uint32)

ToSlice returns this SparseRange as an expanded slice of uint32s.

type Stage

type Stage struct {
	// Types that are valid to be assigned to StageType:
	//	*Stage_Failure
	//	*Stage_Stall
	//	*Stage_Deps
	StageType isStage_StageType `protobuf_oneof:"stage_type"`
}

Stage is the union of the following stage types:

  • FailureStage
  • StallStage
  • DepsStage

func (*Stage) Descriptor

func (*Stage) Descriptor() ([]byte, []int)

func (*Stage) GetDeps

func (m *Stage) GetDeps() *DepsStage

func (*Stage) GetFailure

func (m *Stage) GetFailure() *FailureStage

func (*Stage) GetStageType

func (m *Stage) GetStageType() isStage_StageType

func (*Stage) GetStall

func (m *Stage) GetStall() *StallStage

func (*Stage) Normalize

func (s *Stage) Normalize() error

Normalize checks Stage for errors and converts it to its normalized form.

func (*Stage) ProtoMessage

func (*Stage) ProtoMessage()

func (*Stage) Reset

func (m *Stage) Reset()

func (*Stage) String

func (m *Stage) String() string

func (*Stage) XXX_OneofFuncs

func (*Stage) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{})

XXX_OneofFuncs is for the internal use of the proto package.

type Stage_Deps

type Stage_Deps struct {
	Deps *DepsStage `protobuf:"bytes,3,opt,name=deps,oneof"`
}

type Stage_Failure

type Stage_Failure struct {
	Failure *FailureStage `protobuf:"bytes,1,opt,name=failure,oneof"`
}

type Stage_Stall

type Stage_Stall struct {
	Stall *StallStage `protobuf:"bytes,2,opt,name=stall,oneof"`
}

type StallStage

type StallStage struct {
	Delay *google_protobuf1.Duration `protobuf:"bytes,1,opt,name=delay" json:"delay,omitempty"`
}

StallStage delays the phrase for the provided Duration. This could be used to simulate long-running tasks (like builds).

func (*StallStage) Descriptor

func (*StallStage) Descriptor() ([]byte, []int)

func (*StallStage) GetDelay

func (m *StallStage) GetDelay() *google_protobuf1.Duration

func (*StallStage) Normalize

func (s *StallStage) Normalize() error

Normalize checks StallStage for errors and converts it to its normalized form.

func (*StallStage) ProtoMessage

func (*StallStage) ProtoMessage()

func (*StallStage) Reset

func (m *StallStage) Reset()

func (*StallStage) String

func (m *StallStage) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL