from __future__ import annotations
from pydantic import BaseModel, Field
[docs]class Detail(BaseModel):
"""
Detail payload for this SSM event.
"""
#: Event field ``compliance-status``.
compliance_status: str = Field(..., alias="compliance-status")
#: Event field ``compliance-type``.
compliance_type: str = Field(..., alias="compliance-type")
#: Event field ``last-runtime``.
last_runtime: str | None = Field(None, alias="last-runtime")
#: Event field ``patch-baseline-id``.
patch_baseline_id: str | None = Field(None, alias="patch-baseline-id")
#: Event field ``resource-id``.
resource_id: str = Field(..., alias="resource-id")
#: Event field ``resource-type``.
resource_type: str = Field(..., alias="resource-type")
#: Event field ``severity``.
severity: str | None = None
[docs]class SSMConfigurationComplianceStateChangeEvent(BaseModel):
"""
Raw EventBridge payload for this SSM event.
"""
#: AWS account that emitted the event.
account: str
#: Event-specific detail payload from Systems Manager.
detail: Detail
#: EventBridge detail type for the event.
detail_type: str = Field(..., alias="detail-type")
#: Unique identifier for the EventBridge event.
id: str
#: AWS region where the event was emitted.
region: str
#: Resources associated with the event.
resources: list[str]
#: Event source identifier.
source: str
#: Timestamp when EventBridge recorded the event.
time: str
#: EventBridge payload version.
version: str