bartender.schedulers.memory#
Attributes#
Classes#
Configuration for in memory scheduler. |
|
In memory scheduler. |
Functions#
Module Contents#
- class bartender.schedulers.memory._Job#
Bases:
pydantic.BaseModel- description: bartender.schedulers.abstract.JobDescription#
- state: bartender.db.models.job_model.State#
- bartender.schedulers.memory.KILLED_RETURN_CODE = '130'#
- async bartender.schedulers.memory._worker(queue: asyncio.Queue[_Job], jobs: dict[str, _Job], worker_index: int) None#
- class bartender.schedulers.memory.MemorySchedulerConfig#
Bases:
pydantic.BaseModelConfiguration for in memory scheduler.
- Parameters:
slots – Maximum number of concurrently runnning jobs. Minimum is 1.
- type: Literal['memory'] = 'memory'#
- slots: pydantic.types.PositiveInt = 1#
- class bartender.schedulers.memory.MemoryScheduler(config: MemorySchedulerConfig)#
Bases:
bartender.schedulers.abstract.AbstractSchedulerIn memory scheduler.
When service is closed any queud or running jobs will disappear.
- Parameters:
config (MemorySchedulerConfig) –
- queue: asyncio.Queue[_Job]#
- workers: list[asyncio.Task[None]] = []#
- async submit(description: bartender.schedulers.abstract.JobDescription) str#
Submit a job description for running.
- Parameters:
description (bartender.schedulers.abstract.JobDescription) – Description for a job.
- Returns:
Identifier that can be used later to interact with job.
- Raises:
JobSubmissionError – If job submission failed.
- Return type:
- async state(job_id: str) bartender.db.models.job_model.State#
Get state of a job.
Once job is completed, then scheduler can forget job.
- Parameters:
job_id (str) – Identifier of job.
- Returns:
State of job.
- Return type:
bartender.db.models.job_model.State