"""Docker host status Adds docker_host_status: per host, whether Docker answered at the agent's last report (ok / unavailable / error) and why not. Lets Steward show a host whose Docker went away as such, instead of its last containers as running (#5152). Additive create_table. Revision ID: docker_011_host_status Revises: docker_010_swarm_tasks Create Date: 2026-10-06 """ from typing import Sequence, Union from alembic import op import sqlalchemy as sa revision: str = "docker_011_host_status" down_revision: Union[str, None] = "docker_010_swarm_tasks" branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: op.create_table( "docker_host_status", sa.Column("host_id", sa.String(length=36), nullable=False), sa.Column("status", sa.String(length=16), nullable=False), sa.Column("detail", sa.String(length=255), nullable=True), sa.Column("since", sa.DateTime(timezone=True), nullable=False), sa.Column("reported_at", sa.DateTime(timezone=True), nullable=False), sa.ForeignKeyConstraint(["host_id"], ["hosts.id"], ondelete="CASCADE"), sa.PrimaryKeyConstraint("host_id"), ) def downgrade() -> None: op.drop_table("docker_host_status")