Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BuildQueue ¶
type BuildQueue interface { remoteexecution.CapabilitiesServer remoteexecution.ExecutionServer }
BuildQueue is an interface for the set of operations that a scheduler process must implement.
func NewDemultiplexingBuildQueue ¶
func NewDemultiplexingBuildQueue(buildQueueGetter BuildQueueGetter) BuildQueue
NewDemultiplexingBuildQueue creates an adapter for the Execution service to forward requests to different backends backed on the instance given in requests. Job identifiers returned by backends are prefixed with the instance name, so that successive requests may demultiplex the requests later on.
func NewForwardingBuildQueue ¶
func NewForwardingBuildQueue(client *grpc.ClientConn) BuildQueue
NewForwardingBuildQueue creates a GRPC service for the Capbilities and Execution service that simply forwards all requests to a GRPC client. This may be used by the frontend processes to forward execution requests to scheduler processes in unmodified form.
func NewNonExecutableBuildQueue ¶
func NewNonExecutableBuildQueue() BuildQueue
NewNonExecutableBuildQueue creates a build queue that is incapable of executing anything. It is merely needed to provide a functional implementation of GetCapabilities() for instances that provide remote caching without the execution.
type BuildQueueGetter ¶
type BuildQueueGetter func(instanceName string) (BuildQueue, error)
BuildQueueGetter is the callback invoked by the demultiplexing build queue to obtain a backend that matches the instance name that is provided.