main
py 48 lines 1.79 KB
Raw
1 """Add index snapshots table
2
3 Revision ID: 8c419faae3e5
4 Revises: 2b39bb1f528f
5 Create Date: 2026-01-28 13:22:53.153175
6
7 """
8 from typing import Sequence
9 from typing import Union
10
11 import sqlalchemy as sa
12
13 from alembic import op
14
15 # revision identifiers, used by Alembic.
16 revision: str = "8c419faae3e5"
17 down_revision: Union[str, None] = "2b39bb1f528f"
18 branch_labels: Union[str, Sequence[str], None] = None
19 depends_on: Union[str, Sequence[str], None] = None
20
21
22 def upgrade() -> None:
23 # ### commands auto generated by Alembic - please adjust! ###
24 op.create_table(
25 "index_snapshot_schedules",
26 sa.Column("id", sa.Integer(), nullable=False),
27 sa.Column("name", sa.String(length=255), nullable=False),
28 sa.Column("index_pattern", sa.String(length=255), nullable=False),
29 sa.Column("repository", sa.String(length=255), nullable=False),
30 sa.Column("enabled", sa.Boolean(), nullable=False),
31 sa.Column("snapshot_prefix", sa.String(length=255), nullable=False),
32 sa.Column("include_global_state", sa.Boolean(), nullable=False),
33 sa.Column("skip_write_indices", sa.Boolean(), nullable=False),
34 sa.Column("retention_days", sa.Integer(), nullable=True),
35 sa.Column("last_execution_time", sa.DateTime(), nullable=True),
36 sa.Column("last_snapshot_name", sa.String(length=255), nullable=True),
37 sa.Column("last_execution_status", sa.String(length=255), nullable=True),
38 sa.Column("created_at", sa.DateTime(), nullable=False),
39 sa.Column("updated_at", sa.DateTime(), nullable=False),
40 sa.PrimaryKeyConstraint("id"),
41 )
42 # ### end Alembic commands ###
43
44
45 def downgrade() -> None:
46 # ### commands auto generated by Alembic - please adjust! ###
47 op.drop_table("index_snapshot_schedules")
48 # ### end Alembic commands ###