seguro.commands.scheduler.compose_model¶

Classes

Action(*values)

Bind(*[, propagation, create_host_path, selinux])

BlkioConfig(*[, device_read_bps, ...])

BlkioLimit(*[, path, rate])

BlkioWeight(*[, path, weight])

Build(*[, context, dockerfile, ...])

Cgroup(*values)

Command([root])

ComposeSpecification(*[, version, name, ...])

The Compose file is a YAML file defining a multi-containers based application.

Condition(*values)

Config(*[, name, content, environment, ...])

ConfigItem(*[, subnet, ip_range, gateway, ...])

Constraints([root])

CredentialSpec(*[, config, file, registry])

DependsOn(*[, restart, required])

Deployment(*[, mode, endpoint_mode, ...])

Development(*[, watch])

Device(*[, capabilities, count, device_ids, ...])

Devices([root])

DiscreteResourceSpec(*[, kind, value])

EnvFile([root])

EnvFile1(*, path[, required])

Extends(*, service[, file])

External(*[, name])

External2(*[, name])

GenericResource(*[, discrete_resource_spec])

GenericResources([root])

Healthcheck(*[, disable, interval, retries, ...])

Include([root])

Include1(*[, path, env_file, project_directory])

Ipam(*[, driver, config, options])

Limits(*[, cpus, memory, pids])

ListOfStrings([root])

ListOrDict([root])

ListOrDict1([root])

Logging(*[, driver, options])

Network(*[, name, driver, driver_opts, ...])

Networks(*[, aliases, ipv4_address, ...])

Order(*values)

Placement(*[, constraints, preferences, ...])

Ports(*[, name, mode, host_ip, target, ...])

Preference(*[, spread])

PullPolicy(*values)

Reservations(*[, cpus, memory, ...])

Resources(*[, limits, reservations])

RestartPolicy(*[, condition, delay, ...])

RollbackConfig(*[, parallelism, delay, ...])

Secret(*[, name, environment, file, ...])

Selinux(*values)

Service(*[, develop, deploy, annotations, ...])

ServiceConfigOrSecret([root])

ServiceConfigOrSecret1(*[, source, target, ...])

Size([root])

StringOrList([root])

Tmpfs(*[, size, mode])

Ulimits([root])

Ulimits1(*, hard, soft)

UpdateConfig(*[, parallelism, delay, ...])

Volume(*[, name, driver, driver_opts, ...])

Volume1(*[, nocopy, subpath])

Volumes(*, type[, source, target, ...])

WatchItem(*[, ignore, path, action, target])

class seguro.commands.scheduler.compose_model.Action(*values)[source]¶

Bases: Enum

REBUILD = 'rebuild'¶
SYNC = 'sync'¶
SYNC_RESTART = 'sync+restart'¶
class seguro.commands.scheduler.compose_model.Bind(*, propagation=None, create_host_path=None, selinux=None)[source]¶

Bases: BaseModel

Parameters:
  • propagation (str | None)

  • create_host_path (bool | None)

  • selinux (Selinux | None)

create_host_path: bool | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

propagation: str | None¶
selinux: Selinux | None¶
class seguro.commands.scheduler.compose_model.BlkioConfig(*, device_read_bps=None, device_read_iops=None, device_write_bps=None, device_write_iops=None, weight=None, weight_device=None)[source]¶

Bases: BaseModel

Parameters:
device_read_bps: list[BlkioLimit] | None¶
device_read_iops: list[BlkioLimit] | None¶
device_write_bps: list[BlkioLimit] | None¶
device_write_iops: list[BlkioLimit] | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

weight: int | None¶
weight_device: list[BlkioWeight] | None¶
class seguro.commands.scheduler.compose_model.BlkioLimit(*, path=None, rate=None)[source]¶

Bases: BaseModel

Parameters:
  • path (str | None)

  • rate (int | str | None)

model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

path: str | None¶
rate: int | str | None¶
class seguro.commands.scheduler.compose_model.BlkioWeight(*, path=None, weight=None)[source]¶

Bases: BaseModel

Parameters:
  • path (str | None)

  • weight (int | None)

model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

path: str | None¶
weight: int | None¶
class seguro.commands.scheduler.compose_model.Build(*, context=None, dockerfile=None, dockerfile_inline=None, entitlements=None, args=None, ssh=None, labels=None, cache_from=None, cache_to=None, no_cache=None, additional_contexts=None, network=None, pull=None, target=None, shm_size=None, extra_hosts=None, isolation=None, privileged=None, secrets=None, tags=None, ulimits=None, platforms=None)[source]¶

Bases: BaseModel

Parameters:
  • context (str | None)

  • dockerfile (str | None)

  • dockerfile_inline (str | None)

  • entitlements (list[str] | None)

  • args (ListOrDict | None)

  • ssh (ListOrDict | None)

  • labels (ListOrDict | None)

  • cache_from (list[str] | None)

  • cache_to (list[str] | None)

  • no_cache (bool | None)

  • additional_contexts (ListOrDict | None)

  • network (str | None)

  • pull (bool | None)

  • target (str | None)

  • shm_size (int | str | None)

  • extra_hosts (ListOrDict | None)

  • isolation (str | None)

  • privileged (bool | None)

  • secrets (ServiceConfigOrSecret | None)

  • tags (list[str] | None)

  • ulimits (Ulimits | None)

  • platforms (list[str] | None)

additional_contexts: ListOrDict | None¶
args: ListOrDict | None¶
cache_from: list[str] | None¶
cache_to: list[str] | None¶
context: str | None¶
dockerfile: str | None¶
dockerfile_inline: str | None¶
entitlements: list[str] | None¶
extra_hosts: ListOrDict | None¶
isolation: str | None¶
labels: ListOrDict | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

network: str | None¶
no_cache: bool | None¶
platforms: list[str] | None¶
privileged: bool | None¶
pull: bool | None¶
secrets: ServiceConfigOrSecret | None¶
shm_size: int | str | None¶
ssh: ListOrDict | None¶
tags: list[str] | None¶
target: str | None¶
ulimits: Ulimits | None¶
class seguro.commands.scheduler.compose_model.Cgroup(*values)[source]¶

Bases: Enum

HOST = 'host'¶
PRIVATE = 'private'¶
class seguro.commands.scheduler.compose_model.Command(root=PydanticUndefined)[source]¶

Bases: RootModel[Union[str, list[str], NoneType]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: str | list[str] | None¶
class seguro.commands.scheduler.compose_model.ComposeSpecification(*, version=None, name=None, include=None, services=None, networks=None, volumes=None, secrets=None, configs=None)[source]¶

Bases: BaseModel

The Compose file is a YAML file defining a multi-containers based application.

Parameters:
  • version (str | None)

  • name (Annotated[str | None, _PydanticGeneralMetadata(pattern='^[a-z0-9][a-z0-9_-]*$')])

  • include (list[Include] | None)

  • services (dict[str, Service] | None)

  • networks (dict[str, Network | None] | None)

  • volumes (dict[str, Volume | None] | None)

  • secrets (dict[str, Secret] | None)

  • configs (dict[str, Config] | None)

configs: dict[str, Config] | None¶
include: list[Include] | None¶

compose sub-projects to be included.

model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str | None¶

define the Compose project name, until user defines one explicitly.

networks: dict[str, Network | None] | None¶
secrets: dict[str, Secret] | None¶
services: dict[str, Service] | None¶
version: str | None¶

declared for backward compatibility, ignored.

volumes: dict[str, Volume | None] | None¶
class seguro.commands.scheduler.compose_model.Condition(*values)[source]¶

Bases: Enum

SERVICE_COMPLETED_SUCCESSFULLY = 'service_completed_successfully'¶
SERVICE_HEALTHY = 'service_healthy'¶
SERVICE_STARTED = 'service_started'¶
class seguro.commands.scheduler.compose_model.Config(*, name=None, content=None, environment=None, file=None, external=None, labels=None, template_driver=None)[source]¶

Bases: BaseModel

Parameters:
  • name (str | None)

  • content (str | None)

  • environment (str | None)

  • file (str | None)

  • external (External2 | None)

  • labels (ListOrDict | None)

  • template_driver (str | None)

content: str | None¶
environment: str | None¶
external: External2 | None¶
file: str | None¶
labels: ListOrDict | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str | None¶
template_driver: str | None¶
class seguro.commands.scheduler.compose_model.ConfigItem(*, subnet=None, ip_range=None, gateway=None, aux_addresses=None)[source]¶

Bases: BaseModel

Parameters:
  • subnet (str | None)

  • ip_range (str | None)

  • gateway (str | None)

  • aux_addresses (dict[str, str] | None)

aux_addresses: dict[str, str] | None¶
gateway: str | None¶
ip_range: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

subnet: str | None¶
class seguro.commands.scheduler.compose_model.Constraints(root=PydanticUndefined)[source]¶

Bases: RootModel[Any]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: Any¶
class seguro.commands.scheduler.compose_model.CredentialSpec(*, config=None, file=None, registry=None)[source]¶

Bases: BaseModel

Parameters:
  • config (str | None)

  • file (str | None)

  • registry (str | None)

config: str | None¶
file: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

registry: str | None¶
class seguro.commands.scheduler.compose_model.DependsOn(*, restart=None, required=True, condition)[source]¶

Bases: BaseModel

Parameters:
  • restart (bool | None)

  • required (bool | None)

  • condition (Condition)

condition: Condition¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

required: bool | None¶
restart: bool | None¶
class seguro.commands.scheduler.compose_model.Deployment(*, mode=None, endpoint_mode=None, replicas=None, labels=None, rollback_config=None, update_config=None, resources=None, restart_policy=None, placement=None)[source]¶

Bases: BaseModel

Parameters:
endpoint_mode: str | None¶
labels: ListOrDict | None¶
mode: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

placement: Placement | None¶
replicas: int | None¶
resources: Resources | None¶
restart_policy: RestartPolicy | None¶
rollback_config: RollbackConfig | None¶
update_config: UpdateConfig | None¶
class seguro.commands.scheduler.compose_model.Development(*, watch=None)[source]¶

Bases: BaseModel

Parameters:

watch (list[WatchItem] | None)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

watch: list[WatchItem] | None¶
class seguro.commands.scheduler.compose_model.Device(*, capabilities=None, count=None, device_ids=None, driver=None, options=None)[source]¶

Bases: BaseModel

Parameters:
capabilities: ListOfStrings | None¶
count: str | int | None¶
device_ids: ListOfStrings | None¶
driver: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

options: ListOrDict | None¶
class seguro.commands.scheduler.compose_model.Devices(root=PydanticUndefined)[source]¶

Bases: RootModel[list[Device]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: list[Device]¶
class seguro.commands.scheduler.compose_model.DiscreteResourceSpec(*, kind=None, value=None)[source]¶

Bases: BaseModel

Parameters:
  • kind (str | None)

  • value (float | None)

kind: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

value: float | None¶
class seguro.commands.scheduler.compose_model.EnvFile(root=PydanticUndefined)[source]¶

Bases: RootModel[Union[str, list[Union[str, EnvFile1]]]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: str | list[str | EnvFile1]¶
class seguro.commands.scheduler.compose_model.EnvFile1(*, path, required=True)[source]¶

Bases: BaseModel

Parameters:
  • path (str)

  • required (bool | None)

model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

path: str¶
required: bool | None¶
class seguro.commands.scheduler.compose_model.Extends(*, service, file=None)[source]¶

Bases: BaseModel

Parameters:
  • service (str)

  • file (str | None)

file: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

service: str¶
class seguro.commands.scheduler.compose_model.External(*, name=None)[source]¶

Bases: BaseModel

Parameters:

name (str | None)

model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str | None¶
class seguro.commands.scheduler.compose_model.External2(*, name=None)[source]¶

Bases: BaseModel

Parameters:

name (str | None)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str | None¶
class seguro.commands.scheduler.compose_model.GenericResource(*, discrete_resource_spec=None)[source]¶

Bases: BaseModel

Parameters:

discrete_resource_spec (DiscreteResourceSpec | None)

discrete_resource_spec: DiscreteResourceSpec | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class seguro.commands.scheduler.compose_model.GenericResources(root=PydanticUndefined)[source]¶

Bases: RootModel[list[GenericResource]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: list[GenericResource]¶
class seguro.commands.scheduler.compose_model.Healthcheck(*, disable=None, interval=None, retries=None, test=None, timeout=None, start_period=None, start_interval=None)[source]¶

Bases: BaseModel

Parameters:
  • disable (bool | None)

  • interval (str | None)

  • retries (float | None)

  • test (str | list[str] | None)

  • timeout (str | None)

  • start_period (str | None)

  • start_interval (str | None)

disable: bool | None¶
interval: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

retries: float | None¶
start_interval: str | None¶
start_period: str | None¶
test: str | list[str] | None¶
timeout: str | None¶
class seguro.commands.scheduler.compose_model.Include(root=PydanticUndefined)[source]¶

Bases: RootModel[Union[str, Include1]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: str | Include1¶
class seguro.commands.scheduler.compose_model.Include1(*, path=None, env_file=None, project_directory=None)[source]¶

Bases: BaseModel

Parameters:
env_file: StringOrList | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

path: StringOrList | None¶
project_directory: str | None¶
class seguro.commands.scheduler.compose_model.Ipam(*, driver=None, config=None, options=None)[source]¶

Bases: BaseModel

Parameters:
  • driver (str | None)

  • config (list[ConfigItem] | None)

  • options (dict[str, str] | None)

config: list[ConfigItem] | None¶
driver: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

options: dict[str, str] | None¶
class seguro.commands.scheduler.compose_model.Limits(*, cpus=None, memory=None, pids=None)[source]¶

Bases: BaseModel

Parameters:
  • cpus (float | str | None)

  • memory (str | None)

  • pids (int | None)

cpus: float | str | None¶
memory: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

pids: int | None¶
class seguro.commands.scheduler.compose_model.ListOfStrings(root=PydanticUndefined)[source]¶

Bases: RootModel[list[str]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: list[str]¶
class seguro.commands.scheduler.compose_model.ListOrDict(root=PydanticUndefined)[source]¶

Bases: RootModel[Union[dict[str, Union[str, float, bool, NoneType]], ListOrDict1]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: dict[str, str | float | bool | None] | ListOrDict1¶
class seguro.commands.scheduler.compose_model.ListOrDict1(root=PydanticUndefined)[source]¶

Bases: RootModel[list[Any]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: list[Any]¶
class seguro.commands.scheduler.compose_model.Logging(*, driver=None, options=None)[source]¶

Bases: BaseModel

Parameters:
  • driver (str | None)

  • options (dict[str, str | float | None] | None)

driver: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

options: dict[str, str | float | None] | None¶
class seguro.commands.scheduler.compose_model.Network(*, name=None, driver=None, driver_opts=None, ipam=None, external=None, internal=None, enable_ipv6=None, attachable=None, labels=None)[source]¶

Bases: BaseModel

Parameters:
  • name (str | None)

  • driver (str | None)

  • driver_opts (dict[str, str | float] | None)

  • ipam (Ipam | None)

  • external (External | None)

  • internal (bool | None)

  • enable_ipv6 (bool | None)

  • attachable (bool | None)

  • labels (ListOrDict | None)

attachable: bool | None¶
driver: str | None¶
driver_opts: dict[str, str | float] | None¶
enable_ipv6: bool | None¶
external: External | None¶
internal: bool | None¶
ipam: Ipam | None¶
labels: ListOrDict | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str | None¶
class seguro.commands.scheduler.compose_model.Networks(*, aliases=None, ipv4_address=None, ipv6_address=None, link_local_ips=None, mac_address=None, priority=None)[source]¶

Bases: BaseModel

Parameters:
  • aliases (ListOfStrings | None)

  • ipv4_address (str | None)

  • ipv6_address (str | None)

  • link_local_ips (ListOfStrings | None)

  • mac_address (str | None)

  • priority (float | None)

aliases: ListOfStrings | None¶
ipv4_address: str | None¶
ipv6_address: str | None¶
mac_address: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

priority: float | None¶
class seguro.commands.scheduler.compose_model.Order(*values)[source]¶

Bases: Enum

START_FIRST = 'start-first'¶
STOP_FIRST = 'stop-first'¶
class seguro.commands.scheduler.compose_model.Placement(*, constraints=None, preferences=None, max_replicas_per_node=None)[source]¶

Bases: BaseModel

Parameters:
  • constraints (list[str] | None)

  • preferences (list[Preference] | None)

  • max_replicas_per_node (int | None)

constraints: list[str] | None¶
max_replicas_per_node: int | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

preferences: list[Preference] | None¶
class seguro.commands.scheduler.compose_model.Ports(*, name=None, mode=None, host_ip=None, target=None, published=None, protocol=None, app_protocol=None)[source]¶

Bases: BaseModel

Parameters:
  • name (str | None)

  • mode (str | None)

  • host_ip (str | None)

  • target (int | None)

  • published (str | int | None)

  • protocol (str | None)

  • app_protocol (str | None)

app_protocol: str | None¶
host_ip: str | None¶
mode: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str | None¶
protocol: str | None¶
published: str | int | None¶
target: int | None¶
class seguro.commands.scheduler.compose_model.Preference(*, spread=None)[source]¶

Bases: BaseModel

Parameters:

spread (str | None)

model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

spread: str | None¶
class seguro.commands.scheduler.compose_model.PullPolicy(*values)[source]¶

Bases: Enum

ALWAYS = 'always'¶
BUILD = 'build'¶
IF_NOT_PRESENT = 'if_not_present'¶
MISSING = 'missing'¶
NEVER = 'never'¶
class seguro.commands.scheduler.compose_model.Reservations(*, cpus=None, memory=None, generic_resources=None, devices=None)[source]¶

Bases: BaseModel

Parameters:
  • cpus (float | str | None)

  • memory (str | None)

  • generic_resources (GenericResources | None)

  • devices (Devices | None)

cpus: float | str | None¶
devices: Devices | None¶
generic_resources: GenericResources | None¶
memory: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class seguro.commands.scheduler.compose_model.Resources(*, limits=None, reservations=None)[source]¶

Bases: BaseModel

Parameters:
limits: Limits | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

reservations: Reservations | None¶
class seguro.commands.scheduler.compose_model.RestartPolicy(*, condition=None, delay=None, max_attempts=None, window=None)[source]¶

Bases: BaseModel

Parameters:
  • condition (str | None)

  • delay (str | None)

  • max_attempts (int | None)

  • window (str | None)

condition: str | None¶
delay: str | None¶
max_attempts: int | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

window: str | None¶
class seguro.commands.scheduler.compose_model.RollbackConfig(*, parallelism=None, delay=None, failure_action=None, monitor=None, max_failure_ratio=None, order=None)[source]¶

Bases: BaseModel

Parameters:
  • parallelism (int | None)

  • delay (str | None)

  • failure_action (str | None)

  • monitor (str | None)

  • max_failure_ratio (float | None)

  • order (Order | None)

delay: str | None¶
failure_action: str | None¶
max_failure_ratio: float | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

monitor: str | None¶
order: Order | None¶
parallelism: int | None¶
class seguro.commands.scheduler.compose_model.Secret(*, name=None, environment=None, file=None, external=None, labels=None, driver=None, driver_opts=None, template_driver=None)[source]¶

Bases: BaseModel

Parameters:
  • name (str | None)

  • environment (str | None)

  • file (str | None)

  • external (External2 | None)

  • labels (ListOrDict | None)

  • driver (str | None)

  • driver_opts (dict[str, str | float] | None)

  • template_driver (str | None)

driver: str | None¶
driver_opts: dict[str, str | float] | None¶
environment: str | None¶
external: External2 | None¶
file: str | None¶
labels: ListOrDict | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str | None¶
template_driver: str | None¶
class seguro.commands.scheduler.compose_model.Selinux(*values)[source]¶

Bases: Enum

Z = 'z'¶
z_1 = 'Z'¶
class seguro.commands.scheduler.compose_model.Service(*, develop=None, deploy=None, annotations=None, attach=None, build=None, blkio_config=None, cap_add=None, cap_drop=None, cgroup=None, cgroup_parent=None, command=None, configs=None, container_name=None, cpu_count=None, cpu_percent=None, cpu_shares=None, cpu_quota=None, cpu_period=None, cpu_rt_period=None, cpu_rt_runtime=None, cpus=None, cpuset=None, credential_spec=None, depends_on=None, device_cgroup_rules=None, devices=None, dns=None, dns_opt=None, dns_search=None, domainname=None, entrypoint=None, env_file=None, environment=None, expose=None, extends=None, external_links=None, extra_hosts=None, group_add=None, healthcheck=None, hostname=None, image=None, init=None, ipc=None, isolation=None, labels=None, links=None, logging=None, mac_address=None, mem_limit=None, mem_reservation=None, mem_swappiness=None, memswap_limit=None, network_mode=None, networks=None, oom_kill_disable=None, oom_score_adj=None, pid=None, pids_limit=None, platform=None, ports=None, privileged=None, profiles=None, pull_policy=None, read_only=None, restart=None, runtime=None, scale=None, security_opt=None, shm_size=None, secrets=None, sysctls=None, stdin_open=None, stop_grace_period=None, stop_signal=None, storage_opt=None, tmpfs=None, tty=None, ulimits=None, user=None, uts=None, userns_mode=None, volumes=None, volumes_from=None, working_dir=None)[source]¶

Bases: BaseModel

Parameters:
  • develop (Development | None)

  • deploy (Deployment | None)

  • annotations (ListOrDict | None)

  • attach (bool | None)

  • build (str | Build | None)

  • blkio_config (BlkioConfig | None)

  • cap_add (list[str] | None)

  • cap_drop (list[str] | None)

  • cgroup (Cgroup | None)

  • cgroup_parent (str | None)

  • command (Command | None)

  • configs (ServiceConfigOrSecret | None)

  • container_name (str | None)

  • cpu_count (Annotated[int | None, Ge(ge=0)])

  • cpu_percent (Annotated[int | None, Ge(ge=0), Le(le=100)])

  • cpu_shares (float | str | None)

  • cpu_quota (float | str | None)

  • cpu_period (float | str | None)

  • cpu_rt_period (float | str | None)

  • cpu_rt_runtime (float | str | None)

  • cpus (float | str | None)

  • cpuset (str | None)

  • credential_spec (CredentialSpec | None)

  • depends_on (ListOfStrings | dict[str, DependsOn] | None)

  • device_cgroup_rules (ListOfStrings | None)

  • devices (list[str] | None)

  • dns (StringOrList | None)

  • dns_opt (list[str] | None)

  • dns_search (StringOrList | None)

  • domainname (str | None)

  • entrypoint (Command | None)

  • env_file (EnvFile | None)

  • environment (ListOrDict | None)

  • expose (list[str | float] | None)

  • extends (str | Extends | None)

  • external_links (list[str] | None)

  • extra_hosts (ListOrDict | None)

  • group_add (list[str | float] | None)

  • healthcheck (Healthcheck | None)

  • hostname (str | None)

  • image (str | None)

  • init (bool | None)

  • ipc (str | None)

  • isolation (str | None)

  • labels (ListOrDict | None)

  • links (list[str] | None)

  • logging (Logging | None)

  • mac_address (str | None)

  • mem_limit (float | str | None)

  • mem_reservation (str | int | None)

  • mem_swappiness (int | None)

  • memswap_limit (float | str | None)

  • network_mode (str | None)

  • networks (ListOfStrings | dict[str, Networks | None] | None)

  • oom_kill_disable (bool | None)

  • oom_score_adj (Annotated[int | None, Ge(ge=-1000), Le(le=1000)])

  • pid (str | None)

  • pids_limit (float | str | None)

  • platform (str | None)

  • ports (list[float | str | Ports] | None)

  • privileged (bool | None)

  • profiles (ListOfStrings | None)

  • pull_policy (PullPolicy | None)

  • read_only (bool | None)

  • restart (str | None)

  • runtime (str | None)

  • scale (int | None)

  • security_opt (list[str] | None)

  • shm_size (float | str | None)

  • secrets (ServiceConfigOrSecret | None)

  • sysctls (ListOrDict | None)

  • stdin_open (bool | None)

  • stop_grace_period (str | None)

  • stop_signal (str | None)

  • storage_opt (dict[str, Any] | None)

  • tmpfs (StringOrList | None)

  • tty (bool | None)

  • ulimits (Ulimits | None)

  • user (str | None)

  • uts (str | None)

  • userns_mode (str | None)

  • volumes (list[str | Volumes] | None)

  • volumes_from (list[str] | None)

  • working_dir (str | None)

annotations: ListOrDict | None¶
attach: bool | None¶
blkio_config: BlkioConfig | None¶
build: str | Build | None¶
cap_add: list[str] | None¶
cap_drop: list[str] | None¶
cgroup: Cgroup | None¶
cgroup_parent: str | None¶
command: Command | None¶
configs: ServiceConfigOrSecret | None¶
container_name: str | None¶
cpu_count: int | None¶
cpu_percent: int | None¶
cpu_period: float | str | None¶
cpu_quota: float | str | None¶
cpu_rt_period: float | str | None¶
cpu_rt_runtime: float | str | None¶
cpu_shares: float | str | None¶
cpus: float | str | None¶
cpuset: str | None¶
credential_spec: CredentialSpec | None¶
depends_on: ListOfStrings | dict[str, DependsOn] | None¶
deploy: Deployment | None¶
develop: Development | None¶
device_cgroup_rules: ListOfStrings | None¶
devices: list[str] | None¶
dns: StringOrList | None¶
dns_opt: list[str] | None¶
domainname: str | None¶
entrypoint: Command | None¶
env_file: EnvFile | None¶
environment: ListOrDict | None¶
expose: list[str | float] | None¶
extends: str | Extends | None¶
extra_hosts: ListOrDict | None¶
group_add: list[str | float] | None¶
healthcheck: Healthcheck | None¶
hostname: str | None¶
image: str | None¶
init: bool | None¶
ipc: str | None¶
isolation: str | None¶
labels: ListOrDict | None¶
logging: Logging | None¶
mac_address: str | None¶
mem_limit: float | str | None¶
mem_reservation: str | int | None¶
mem_swappiness: int | None¶
memswap_limit: float | str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

network_mode: str | None¶
networks: ListOfStrings | dict[str, Networks | None] | None¶
oom_kill_disable: bool | None¶
oom_score_adj: int | None¶
pid: str | None¶
pids_limit: float | str | None¶
platform: str | None¶
ports: list[float | str | Ports] | None¶
privileged: bool | None¶
profiles: ListOfStrings | None¶
pull_policy: PullPolicy | None¶
read_only: bool | None¶
restart: str | None¶
runtime: str | None¶
scale: int | None¶
secrets: ServiceConfigOrSecret | None¶
security_opt: list[str] | None¶
shm_size: float | str | None¶
stdin_open: bool | None¶
stop_grace_period: str | None¶
stop_signal: str | None¶
storage_opt: dict[str, Any] | None¶
sysctls: ListOrDict | None¶
tmpfs: StringOrList | None¶
tty: bool | None¶
ulimits: Ulimits | None¶
user: str | None¶
userns_mode: str | None¶
uts: str | None¶
volumes: list[str | Volumes] | None¶
volumes_from: list[str] | None¶
working_dir: str | None¶
class seguro.commands.scheduler.compose_model.ServiceConfigOrSecret(root=PydanticUndefined)[source]¶

Bases: RootModel[list[Union[str, ServiceConfigOrSecret1]]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: list[str | ServiceConfigOrSecret1]¶
class seguro.commands.scheduler.compose_model.ServiceConfigOrSecret1(*, source=None, target=None, uid=None, gid=None, mode=None)[source]¶

Bases: BaseModel

Parameters:
  • source (str | None)

  • target (str | None)

  • uid (str | None)

  • gid (str | None)

  • mode (float | None)

gid: str | None¶
mode: float | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

source: str | None¶
target: str | None¶
uid: str | None¶
class seguro.commands.scheduler.compose_model.Size(root=PydanticUndefined)[source]¶

Bases: RootModel[int]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: int¶
class seguro.commands.scheduler.compose_model.StringOrList(root=PydanticUndefined)[source]¶

Bases: RootModel[Union[str, ListOfStrings]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: str | ListOfStrings¶
class seguro.commands.scheduler.compose_model.Tmpfs(*, size=None, mode=None)[source]¶

Bases: BaseModel

Parameters:
  • size (Size | str | None)

  • mode (float | None)

mode: float | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

size: Size | str | None¶
class seguro.commands.scheduler.compose_model.Ulimits(root=PydanticUndefined)[source]¶

Bases: RootModel[dict[str, Union[int, Ulimits1]]]

Parameters:

root (RootModelRootType)

model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

root: dict[str, int | Ulimits1]¶
class seguro.commands.scheduler.compose_model.Ulimits1(*, hard, soft)[source]¶

Bases: BaseModel

Parameters:
  • hard (int)

  • soft (int)

hard: int¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

soft: int¶
class seguro.commands.scheduler.compose_model.UpdateConfig(*, parallelism=None, delay=None, failure_action=None, monitor=None, max_failure_ratio=None, order=None)[source]¶

Bases: BaseModel

Parameters:
  • parallelism (int | None)

  • delay (str | None)

  • failure_action (str | None)

  • monitor (str | None)

  • max_failure_ratio (float | None)

  • order (Order | None)

delay: str | None¶
failure_action: str | None¶
max_failure_ratio: float | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

monitor: str | None¶
order: Order | None¶
parallelism: int | None¶
class seguro.commands.scheduler.compose_model.Volume(*, name=None, driver=None, driver_opts=None, external=None, labels=None)[source]¶

Bases: BaseModel

Parameters:
  • name (str | None)

  • driver (str | None)

  • driver_opts (dict[str, str | float] | None)

  • external (External | None)

  • labels (ListOrDict | None)

driver: str | None¶
driver_opts: dict[str, str | float] | None¶
external: External | None¶
labels: ListOrDict | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

name: str | None¶
class seguro.commands.scheduler.compose_model.Volume1(*, nocopy=None, subpath=None)[source]¶

Bases: BaseModel

Parameters:
  • nocopy (bool | None)

  • subpath (str | None)

model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

nocopy: bool | None¶
subpath: str | None¶
class seguro.commands.scheduler.compose_model.Volumes(*, type, source=None, target=None, read_only=None, consistency=None, bind=None, volume=None, tmpfs=None)[source]¶

Bases: BaseModel

Parameters:
  • type (str)

  • source (str | None)

  • target (str | None)

  • read_only (bool | None)

  • consistency (str | None)

  • bind (Bind | None)

  • volume (Volume1 | None)

  • tmpfs (Tmpfs | None)

bind: Bind | None¶
consistency: str | None¶
model_config = {'extra': 'forbid'}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

read_only: bool | None¶
source: str | None¶
target: str | None¶
tmpfs: Tmpfs | None¶
type: str¶
volume: Volume1 | None¶
class seguro.commands.scheduler.compose_model.WatchItem(*, ignore=None, path=None, action=None, target=None)[source]¶

Bases: BaseModel

Parameters:
  • ignore (list[str] | None)

  • path (str | None)

  • action (Action | None)

  • target (str | None)

action: Action | None¶
ignore: list[str] | None¶
model_config = {}¶

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

path: str | None¶
target: str | None¶