Source code for ska_oso_pdm.sb_instance

from datetime import datetime, timezone

from pydantic import AwareDatetime, Field

from ska_oso_pdm._shared import (
    ExecutionBlockID,
    FunctionArgs,
    Metadata,
    PdmObject,
    SBDefinitionID,
    SBInstanceID,
    TelescopeType,
)


[docs] class ActivityCall(PdmObject): activity_ref: str | None = None executed_at: AwareDatetime = Field( default_factory=lambda: datetime.now(timezone.utc) ) runtime_args: list[FunctionArgs] = Field(default_factory=list)
[docs] class SBInstance(PdmObject): interface: str | None = None sbi_id: SBInstanceID | None = None metadata: Metadata | None = None telescope: TelescopeType sbd_ref: SBDefinitionID | None = None sbd_version: int | None = None eb_ref: ExecutionBlockID | None = None subarray_id: int | None = None activities: list[ActivityCall] = Field(default_factory=list)