Edit on GitHub

Add the environment statements table.

 1"""Add the environment statements table."""
 2
 3from sqlglot import exp
 4
 5from sqlmesh.utils.migration import blob_text_type, index_text_type
 6
 7
 8def migrate_schemas(engine_adapter, schema, **kwargs):  # type: ignore
 9    environment_statements_table = "_environment_statements"
10
11    if schema:
12        environment_statements_table = f"{schema}.{environment_statements_table}"
13
14    index_type = index_text_type(engine_adapter.dialect)
15    blob_type = blob_text_type(engine_adapter.dialect)
16
17    engine_adapter.create_state_table(
18        environment_statements_table,
19        {
20            "environment_name": exp.DataType.build(index_type),
21            "plan_id": exp.DataType.build("text"),
22            "environment_statements": exp.DataType.build(blob_type),
23        },
24        primary_key=("environment_name",),
25    )
26
27
28def migrate_rows(engine_adapter, schema, **kwargs):  # type: ignore
29    pass
def migrate_schemas(engine_adapter, schema, **kwargs):
 9def migrate_schemas(engine_adapter, schema, **kwargs):  # type: ignore
10    environment_statements_table = "_environment_statements"
11
12    if schema:
13        environment_statements_table = f"{schema}.{environment_statements_table}"
14
15    index_type = index_text_type(engine_adapter.dialect)
16    blob_type = blob_text_type(engine_adapter.dialect)
17
18    engine_adapter.create_state_table(
19        environment_statements_table,
20        {
21            "environment_name": exp.DataType.build(index_type),
22            "plan_id": exp.DataType.build("text"),
23            "environment_statements": exp.DataType.build(blob_type),
24        },
25        primary_key=("environment_name",),
26    )
def migrate_rows(engine_adapter, schema, **kwargs):
29def migrate_rows(engine_adapter, schema, **kwargs):  # type: ignore
30    pass