buildgrid.server.app.settings.config module

class buildgrid.server.app.settings.config.ChannelConfig(insecure_mode: bool, address: str, credentials: dict[str, str] | None = None)

Bases: object

insecure_mode: bool
address: str
credentials: dict[str, str] | None = None
class buildgrid.server.app.settings.config.InstanceConfig(name: str, description: str | None, connections: 'list[SqlProvider | RedisProvider]', storages: list[buildgrid.server.cas.storage.storage_abc.StorageABC], caches: list[buildgrid.server.actioncache.caches.action_cache_abc.ActionCacheABC], clients: list[buildgrid_metering.client.client.SyncMeteringServiceClient | buildgrid.server.client.asset.AssetClient], schedulers: list[buildgrid.server.scheduler.impl.Scheduler], services: list[buildgrid.server.servicer.Instance])

Bases: object

name: str
description: str | None
connections: list[SqlProvider | RedisProvider]
storages: list[buildgrid.server.cas.storage.storage_abc.StorageABC]
caches: list[buildgrid.server.actioncache.caches.action_cache_abc.ActionCacheABC]
clients: list[buildgrid_metering.client.client.SyncMeteringServiceClient | buildgrid.server.client.asset.AssetClient]
schedulers: list[buildgrid.server.scheduler.impl.Scheduler]
services: list[buildgrid.server.servicer.Instance]
class buildgrid.server.app.settings.config.CleanupConfig(name: str, index: buildgrid.server.cas.storage.index.index_abc.IndexABC, batch_size: int, high_watermark: int, low_watermark: int, only_if_unused_for: datetime.timedelta, large_blob_threshold: int | None, large_blob_lifetime: datetime.timedelta | None, retry_limit: int)

Bases: object

name: str
index: IndexABC
batch_size: int
high_watermark: int
low_watermark: int
only_if_unused_for: timedelta
large_blob_threshold: int | None
large_blob_lifetime: timedelta | None
retry_limit: int
class buildgrid.server.app.settings.config.BuildgridConfig(description: str | None, authorization: buildgrid.server.auth.manager.AuthManager | None, monitoring: buildgrid.server.monitoring.MonitoringBus | None, thread_pool_size: int | None, server_reflection: bool, grpc_compression: grpc.Compression, server: list[buildgrid.server.app.settings.config.ChannelConfig], grpc_server_options: Sequence[tuple[str, Any]] | None, connections: 'list[SqlProvider | RedisProvider]', storages: list[buildgrid.server.cas.storage.storage_abc.StorageABC], caches: list[buildgrid.server.actioncache.caches.action_cache_abc.ActionCacheABC], clients: list[buildgrid_metering.client.client.SyncMeteringServiceClient | buildgrid.server.client.asset.AssetClient], schedulers: list[buildgrid_metering.client.client.SyncMeteringServiceClient | buildgrid.server.client.asset.AssetClient], instances: list[buildgrid.server.app.settings.config.InstanceConfig], cleanup: list[buildgrid.server.app.settings.config.CleanupConfig], sentry: buildgrid.server.sentry.Sentry | None)

Bases: object

description: str | None
authorization: AuthManager | None
monitoring: MonitoringBus | None
thread_pool_size: int | None
server_reflection: bool
grpc_compression: Compression
server: list[buildgrid.server.app.settings.config.ChannelConfig]
grpc_server_options: Sequence[tuple[str, Any]] | None
connections: list[SqlProvider | RedisProvider]
storages: list[buildgrid.server.cas.storage.storage_abc.StorageABC]
caches: list[buildgrid.server.actioncache.caches.action_cache_abc.ActionCacheABC]
clients: list[buildgrid_metering.client.client.SyncMeteringServiceClient | buildgrid.server.client.asset.AssetClient]
schedulers: list[buildgrid_metering.client.client.SyncMeteringServiceClient | buildgrid.server.client.asset.AssetClient]
instances: list[buildgrid.server.app.settings.config.InstanceConfig]
cleanup: list[buildgrid.server.app.settings.config.CleanupConfig]
sentry: Sentry | None
buildgrid.server.app.settings.config.populate_authorization_config(conf: dict[str, Any]) AuthManager | None
buildgrid.server.app.settings.config.populate_monitoring_config(conf: dict[str, Any]) MonitoringBus | None
buildgrid.server.app.settings.config.populate_instance_config(confs: list[dict[str, Any]]) list[buildgrid.server.app.settings.config.InstanceConfig]
buildgrid.server.app.settings.config.populate_cleanup_config(confs: list[dict[str, Any]]) list[buildgrid.server.app.settings.config.CleanupConfig]
buildgrid.server.app.settings.config.populate_buildgrid_config(conf: dict[str, Any]) BuildgridConfig
buildgrid.server.app.settings.config.parse_compression(conf: str) Compression
buildgrid.server.app.settings.config.normalize_str_or_list_strs(conf: str | list[str]) list[str]

Normalize some configs that are allowed to be either a singleton or a list to a list