buildgrid.server.scheduler.assigner module

class buildgrid.server.scheduler.assigner.JobAssigner(*args, **kwargs)

Bases: Protocol

start() None
stop() None
begin(shutdown_requested: Event) None
class buildgrid.server.scheduler.assigner.PriorityAgeJobAssigner(scheduler: Scheduler, name: str, interval: float, priority_percentage: int = 100, jitter_factor: int = 1, failure_backoff: float = 5.0)

Bases: object

start() None
stop() None
begin(shutdown_requested: Event) None
class buildgrid.server.scheduler.assigner.AssignerConfig(*args, **kwargs)

Bases: Protocol

count: int
interval: float
generate_assigners(scheduler: Scheduler) Generator[JobAssigner, None, None]

Generate the actual JobAssigner objects defined by this configuration.

class buildgrid.server.scheduler.assigner.PriorityAgeAssignerConfig(count: int, interval: float, priority_assignment_percentage: int = 100, failure_backoff: float = 5.0)

Bases: object

count: int
interval: float
priority_assignment_percentage: int = 100
failure_backoff: float = 5.0
generate_assigners(scheduler: Scheduler) Generator[PriorityAgeJobAssigner, None, None]