refactor: delete table

This commit is contained in:
tao.chen
2026-07-31 13:21:15 +08:00
parent f288c90d37
commit 28069f516b
9 changed files with 510 additions and 1074 deletions
@@ -1,112 +0,0 @@
"""demo workspaces and users
Revision ID: 20260728_0002
Revises: 20260724_0001
Create Date: 2026-07-28
"""
from collections.abc import Sequence
from alembic import op
revision: str = "20260728_0002"
down_revision: str | Sequence[str] | None = "20260724_0001"
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None
ADMIN_ROLE = "0000000000HNQN4KM476QNKW1C"
DEVELOPER_ROLE = "00000000005RCQ4GPGBK3WZYMM"
MODEL_WORKSPACE = "00000000000BM630VT9ARVFZPC"
RISK_WORKSPACE = "0000000000AE0NC0V5T424KK86"
ZHANG = "0000000000RF6FG1SDBXG59S13"
LI = "0000000000H2QYCGPCWQM1JSGS"
WANG = "0000000000RWG40ESZPGJT629J"
ZHAO = "00000000004CQV7WASJA6N6FW4"
def upgrade() -> None:
op.execute(
f"""
INSERT INTO roles
(role_id, role_code, role_name, role_scope, is_builtin)
VALUES
('{ADMIN_ROLE}', 'admin', '管理员', 'workspace', 1),
('{DEVELOPER_ROLE}', 'developer', '开发人员', 'workspace', 1)
ON DUPLICATE KEY UPDATE
role_name = VALUES(role_name),
role_scope = VALUES(role_scope)
"""
)
op.execute(
f"""
INSERT INTO users
(user_id, username, display_name, password_hash, status, email)
VALUES
('{ZHANG}', 'admin-zhang', '张三', 'demo-login-disabled', 'active',
'zhangsan@example.local'),
('{LI}', 'admin-li', '李四', 'demo-login-disabled', 'active',
'lisi@example.local'),
('{WANG}', 'dev-wang', '王五', 'demo-login-disabled', 'active',
'wangwu@example.local'),
('{ZHAO}', 'dev-zhao', '赵六', 'demo-login-disabled', 'active',
'zhaoliu@example.local')
ON DUPLICATE KEY UPDATE
username = VALUES(username),
display_name = VALUES(display_name),
status = 'active',
email = VALUES(email)
"""
)
op.execute(
f"""
INSERT INTO workspaces
(workspace_id, workspace_code, workspace_name, active_root_uri,
quota_bytes, used_bytes, status, created_by, description,
artifact_bucket, artifact_prefix)
VALUES
('{MODEL_WORKSPACE}', 'model-dev', '模型开发 Workspace',
'file:///workspace/workspaces/model-dev', 0, 0, 'active',
'{ZHANG}', '模型开发与脚本调度', 'model-platform',
'workspaces/model-dev'),
('{RISK_WORKSPACE}', 'risk-validation', '风险验证 Workspace',
'file:///workspace/workspaces/risk-validation', 0, 0, 'active',
'{LI}', '风险模型验证与批处理', 'model-platform',
'workspaces/risk-validation')
ON DUPLICATE KEY UPDATE
workspace_name = VALUES(workspace_name),
active_root_uri = VALUES(active_root_uri),
status = 'active',
description = VALUES(description)
"""
)
values = []
for workspace_id in (MODEL_WORKSPACE, RISK_WORKSPACE):
for user_id, role_id in (
(ZHANG, ADMIN_ROLE),
(LI, ADMIN_ROLE),
(WANG, DEVELOPER_ROLE),
(ZHAO, DEVELOPER_ROLE),
):
values.append(
f"('{workspace_id}', '{user_id}', '{role_id}', 'active')"
)
op.execute(
"""
INSERT INTO workspace_members
(workspace_id, user_id, role_id, member_status)
VALUES
"""
+ ",\n".join(values)
+ """
ON DUPLICATE KEY UPDATE
role_id = VALUES(role_id),
member_status = 'active'
"""
)
def downgrade() -> None:
# 演示身份可能已产生业务数据,降级时保留,避免破坏外键引用。
pass
@@ -1,41 +0,0 @@
"""decouple schedule artifact visibility from version history
Revision ID: 20260728_0003
Revises: 20260728_0002
Create Date: 2026-07-28
"""
from collections.abc import Sequence
from alembic import op
import sqlalchemy as sa
from sqlalchemy.dialects import mysql
revision: str = "20260728_0003"
down_revision: str | Sequence[str] | None = "20260728_0002"
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None
def upgrade() -> None:
op.add_column(
"versions",
sa.Column(
"schedule_hidden_at",
mysql.DATETIME(fsp=3),
nullable=True,
comment="从调度稳定版本列表移除的时间;不影响版本和运行历史",
),
)
op.create_index(
"idx_versions_schedule_visible",
"versions",
["workspace_id", "schedule_hidden_at", "created_at"],
unique=False,
)
def downgrade() -> None:
op.drop_index("idx_versions_schedule_visible", table_name="versions")
op.drop_column("versions", "schedule_hidden_at")
@@ -1,49 +0,0 @@
"""remove Redis-specific lock column naming
Revision ID: 20260730_0004
Revises: 20260728_0003
Create Date: 2026-07-30
"""
from collections.abc import Sequence
from alembic import context, op
import sqlalchemy as sa
revision: str = "20260730_0004"
down_revision: str | None = "20260728_0003"
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None
def _column_names() -> set[str]:
inspector = sa.inspect(op.get_bind())
return {item["name"] for item in inspector.get_columns("edit_sessions")}
def upgrade() -> None:
if context.is_offline_mode():
return
columns = _column_names()
if "redis_lock_key" in columns and "lock_key" not in columns:
op.alter_column(
"edit_sessions",
"redis_lock_key",
new_column_name="lock_key",
existing_type=sa.String(length=512),
existing_nullable=False,
)
def downgrade() -> None:
if context.is_offline_mode():
return
columns = _column_names()
if "lock_key" in columns and "redis_lock_key" not in columns:
op.alter_column(
"edit_sessions",
"lock_key",
new_column_name="redis_lock_key",
existing_type=sa.String(length=512),
existing_nullable=False,
)