Coverage for /usr/local/lib/python3.12/site-packages/prefect/settings/models/server/concurrency.py: 100%

9 statements  

« prev     ^ index     » next       coverage.py v7.10.6, created at 2025-12-05 13:38 +0000

1from typing import ClassVar 1a

2 

3from pydantic import Field 1a

4from pydantic_settings import SettingsConfigDict 1a

5 

6from prefect.settings.base import PrefectBaseSettings, build_settings_config 1a

7 

8 

9class ServerConcurrencySettings(PrefectBaseSettings): 1a

10 model_config: ClassVar[SettingsConfigDict] = build_settings_config( 1a

11 ("server", "concurrency") 

12 ) 

13 

14 lease_storage: str = Field( 1a

15 default="prefect.server.concurrency.lease_storage.memory", 

16 description="The module to use for storing concurrency limit leases.", 

17 ) 

18 

19 initial_deployment_lease_duration: float = Field( 1a

20 default=300.0, 

21 ge=30.0, # Minimum 30 seconds 

22 le=3600.0, # Maximum 1 hour 

23 description="Initial duration for deployment concurrency lease in seconds.", 

24 ) 

25 

26 maximum_concurrency_slot_wait_seconds: float = Field( 1a

27 default=30, 

28 ge=0, 

29 description="The maximum number of seconds to wait before retrying when a concurrency slot cannot be acquired.", 

30 )