Documentation ¶
Index ¶
- func NewStorageInstalledBidStrategy(storages storage.StorageProvider) bidstrategy.SemanticBidStrategy
- type ChainedBidStrategy
- type DistanceDelayStrategy
- type DistanceDelayStrategyParams
- type ExternalCommandStrategy
- type ExternalCommandStrategyParams
- type ExternalHTTPStrategy
- type ExternalHTTPStrategyParams
- type InputLocalityStrategy
- type InputLocalityStrategyParams
- type JobSelectionDataLocality
- type NetworkingStrategy
- type ProviderInstalledStrategy
- func NewProviderInstalledArrayStrategy[P provider.Providable](provider provider.Provider[P], getter func(*models.Job) []string) *ProviderInstalledStrategy[P]
- func NewProviderInstalledStrategy[P provider.Providable](provider provider.Provider[P], getter func(*models.Job) string) *ProviderInstalledStrategy[P]
- type StatelessJobStrategy
- type StatelessJobStrategyParams
- type TimeoutStrategy
- type TimeoutStrategyParams
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewStorageInstalledBidStrategy ¶
func NewStorageInstalledBidStrategy(storages storage.StorageProvider) bidstrategy.SemanticBidStrategy
Types ¶
type ChainedBidStrategy ¶
type ChainedBidStrategy struct {
Strategies []bidstrategy.SemanticBidStrategy
}
func NewChainedSemanticBidStrategy ¶
func NewChainedSemanticBidStrategy(strategies ...bidstrategy.SemanticBidStrategy) *ChainedBidStrategy
func (*ChainedBidStrategy) AddStrategy ¶
func (c *ChainedBidStrategy) AddStrategy(strategy bidstrategy.SemanticBidStrategy)
AddStrategy Add new strategy to the end of the chain
func (*ChainedBidStrategy) ShouldBid ¶
func (c *ChainedBidStrategy) ShouldBid( ctx context.Context, request bidstrategy.BidStrategyRequest) (bidstrategy.BidStrategyResponse, error)
ShouldBid Iterate over all strategies, and return shouldBid if no error is thrown and none of the strategies return should not bid.
type DistanceDelayStrategy ¶
type DistanceDelayStrategy struct {
// contains filtered or unexported fields
}
func NewDistanceDelayStrategy ¶
func NewDistanceDelayStrategy(params DistanceDelayStrategyParams) *DistanceDelayStrategy
func (DistanceDelayStrategy) ShouldBid ¶
func (s DistanceDelayStrategy) ShouldBid( ctx context.Context, request bidstrategy.BidStrategyRequest) (bidstrategy.BidStrategyResponse, error)
type DistanceDelayStrategyParams ¶
type DistanceDelayStrategyParams struct {
NetworkSize int
}
type ExternalCommandStrategy ¶
type ExternalCommandStrategy struct {
// contains filtered or unexported fields
}
func NewExternalCommandStrategy ¶
func NewExternalCommandStrategy(params ExternalCommandStrategyParams) *ExternalCommandStrategy
func (*ExternalCommandStrategy) ShouldBid ¶
func (s *ExternalCommandStrategy) ShouldBid( ctx context.Context, request bidstrategy.BidStrategyRequest) (bidstrategy.BidStrategyResponse, error)
type ExternalCommandStrategyParams ¶
type ExternalCommandStrategyParams struct {
Command string
}
type ExternalHTTPStrategy ¶
type ExternalHTTPStrategy struct {
// contains filtered or unexported fields
}
func NewExternalHTTPStrategy ¶
func NewExternalHTTPStrategy(params ExternalHTTPStrategyParams) *ExternalHTTPStrategy
func (*ExternalHTTPStrategy) ShouldBid ¶
func (s *ExternalHTTPStrategy) ShouldBid( ctx context.Context, request bidstrategy.BidStrategyRequest) (bidstrategy.BidStrategyResponse, error)
type ExternalHTTPStrategyParams ¶
type ExternalHTTPStrategyParams struct {
URL string
}
type InputLocalityStrategy ¶
type InputLocalityStrategy struct {
// contains filtered or unexported fields
}
func NewInputLocalityStrategy ¶
func NewInputLocalityStrategy(params InputLocalityStrategyParams) *InputLocalityStrategy
func (*InputLocalityStrategy) ShouldBid ¶
func (s *InputLocalityStrategy) ShouldBid( ctx context.Context, request bidstrategy.BidStrategyRequest, ) (bidstrategy.BidStrategyResponse, error)
type InputLocalityStrategyParams ¶
type InputLocalityStrategyParams struct { Locality JobSelectionDataLocality Storages storage.StorageProvider }
type JobSelectionDataLocality ¶ added in v1.0.4
type JobSelectionDataLocality int64
const ( Local JobSelectionDataLocality = 0 // local Anywhere JobSelectionDataLocality = 1 // anywhere )
func ParseJobSelectionDataLocality ¶ added in v1.0.4
func ParseJobSelectionDataLocality(s string) (ret JobSelectionDataLocality, err error)
func (JobSelectionDataLocality) MarshalYAML ¶ added in v1.0.4
func (i JobSelectionDataLocality) MarshalYAML() (interface{}, error)
func (JobSelectionDataLocality) String ¶ added in v1.0.4
func (i JobSelectionDataLocality) String() string
func (*JobSelectionDataLocality) UnmarshalYAML ¶ added in v1.0.4
func (i *JobSelectionDataLocality) UnmarshalYAML(value *yaml.Node) error
type NetworkingStrategy ¶
type NetworkingStrategy struct {
Accept bool
}
func NewNetworkingStrategy ¶
func NewNetworkingStrategy(accept bool) *NetworkingStrategy
func (*NetworkingStrategy) ShouldBid ¶
func (s *NetworkingStrategy) ShouldBid( ctx context.Context, request bidstrategy.BidStrategyRequest) (bidstrategy.BidStrategyResponse, error)
ShouldBid implements BidStrategy
type ProviderInstalledStrategy ¶
type ProviderInstalledStrategy[P provider.Providable] struct { // contains filtered or unexported fields }
func NewProviderInstalledArrayStrategy ¶
func NewProviderInstalledArrayStrategy[P provider.Providable]( provider provider.Provider[P], getter func(*models.Job) []string, ) *ProviderInstalledStrategy[P]
func NewProviderInstalledStrategy ¶
func NewProviderInstalledStrategy[P provider.Providable]( provider provider.Provider[P], getter func(*models.Job) string, ) *ProviderInstalledStrategy[P]
func (*ProviderInstalledStrategy[P]) ShouldBid ¶
func (s *ProviderInstalledStrategy[P]) ShouldBid( ctx context.Context, request bidstrategy.BidStrategyRequest, ) (resp bidstrategy.BidStrategyResponse, err error)
type StatelessJobStrategy ¶
type StatelessJobStrategy struct {
// contains filtered or unexported fields
}
func NewStatelessJobStrategy ¶
func NewStatelessJobStrategy(params StatelessJobStrategyParams) *StatelessJobStrategy
func (*StatelessJobStrategy) ShouldBid ¶
func (s *StatelessJobStrategy) ShouldBid( ctx context.Context, request bidstrategy.BidStrategyRequest) (bidstrategy.BidStrategyResponse, error)
type StatelessJobStrategyParams ¶
type StatelessJobStrategyParams struct {
RejectStatelessJobs bool
}
type TimeoutStrategy ¶
type TimeoutStrategy struct {
// contains filtered or unexported fields
}
func NewTimeoutStrategy ¶
func NewTimeoutStrategy(params TimeoutStrategyParams) *TimeoutStrategy
func (*TimeoutStrategy) ShouldBid ¶
func (s *TimeoutStrategy) ShouldBid(_ context.Context, request bidstrategy.BidStrategyRequest) (bidstrategy.BidStrategyResponse, error)
Click to show internal directories.
Click to hide internal directories.