feat(db): 迁移里的数据库角色名改为环境变量注入
This commit is contained in:
@@ -12,13 +12,13 @@ import sqlalchemy as sa
|
||||
from alembic import op
|
||||
from sqlalchemy.dialects import postgresql
|
||||
|
||||
from app.roles import APP_ROLE, OWNER_ROLE
|
||||
|
||||
revision: str = "0001"
|
||||
down_revision: str | None = None
|
||||
branch_labels: str | Sequence[str] | None = None
|
||||
depends_on: str | Sequence[str] | None = None
|
||||
|
||||
APP_ROLE = "dadao_app"
|
||||
|
||||
# 说明:asyncpg 走"预备语句"执行,**一条 execute 里只能有一条 SQL**,
|
||||
# 多条语句会报 `cannot insert multiple commands into a prepared statement`。
|
||||
# 所以这里按语句拆成元组,逐条执行。
|
||||
@@ -76,7 +76,7 @@ POLICY_STATEMENTS: tuple[str, ...] = (
|
||||
f"workspace, app_user, member, invitation, audit_log TO {APP_ROLE};"
|
||||
),
|
||||
(
|
||||
"ALTER DEFAULT PRIVILEGES FOR ROLE dadao_owner IN SCHEMA public "
|
||||
f"ALTER DEFAULT PRIVILEGES FOR ROLE {OWNER_ROLE} IN SCHEMA public "
|
||||
f"GRANT SELECT, INSERT, UPDATE, DELETE ON TABLES TO {APP_ROLE};"
|
||||
),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user