merge: integrate feat/auth into develop
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
"""enable password login for the seeded development users
|
||||
|
||||
Revision ID: 9a1b2c3d4e5f
|
||||
Revises: b71c4f2a9d10
|
||||
Create Date: 2026-08-03 16:00:00
|
||||
"""
|
||||
|
||||
from collections.abc import Sequence
|
||||
import os
|
||||
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
from common.auth.passwords import hash_password
|
||||
|
||||
|
||||
revision: str = "9a1b2c3d4e5f"
|
||||
down_revision: str | Sequence[str] | None = "b71c4f2a9d10"
|
||||
branch_labels: str | Sequence[str] | None = None
|
||||
depends_on: str | Sequence[str] | None = None
|
||||
|
||||
|
||||
SEEDED_USER_IDS = (
|
||||
"0000000000RF6FG1SDBXG59S13",
|
||||
"0000000000H2QYCGPCWQM1JSGS",
|
||||
"0000000000RWG40ESZPGJT629J",
|
||||
"00000000004CQV7WASJA6N6FW4",
|
||||
)
|
||||
DISABLED_PASSWORD = "demo-login-disabled"
|
||||
|
||||
|
||||
def upgrade() -> None:
|
||||
password = os.environ.get("INITIAL_ADMIN_PASSWORD", "admin12345")
|
||||
users = sa.table(
|
||||
"users",
|
||||
sa.column("user_id", sa.String),
|
||||
sa.column("password_hash", sa.String),
|
||||
)
|
||||
op.execute(
|
||||
users.update()
|
||||
.where(users.c.user_id.in_(SEEDED_USER_IDS))
|
||||
.where(users.c.password_hash == DISABLED_PASSWORD)
|
||||
.values(password_hash=hash_password(password))
|
||||
)
|
||||
|
||||
|
||||
def downgrade() -> None:
|
||||
users = sa.table(
|
||||
"users",
|
||||
sa.column("user_id", sa.String),
|
||||
sa.column("password_hash", sa.String),
|
||||
)
|
||||
op.execute(
|
||||
users.update()
|
||||
.where(users.c.user_id.in_(SEEDED_USER_IDS))
|
||||
.values(password_hash=DISABLED_PASSWORD)
|
||||
)
|
||||
@@ -0,0 +1,33 @@
|
||||
"""add the RustFS trash object key
|
||||
|
||||
Revision ID: a2b3c4d5e6f7
|
||||
Revises: 9a1b2c3d4e5f
|
||||
Create Date: 2026-08-03 16:30:00
|
||||
"""
|
||||
|
||||
from collections.abc import Sequence
|
||||
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
|
||||
|
||||
revision: str = "a2b3c4d5e6f7"
|
||||
down_revision: str | Sequence[str] | None = "9a1b2c3d4e5f"
|
||||
branch_labels: str | Sequence[str] | None = None
|
||||
depends_on: str | Sequence[str] | None = None
|
||||
|
||||
|
||||
def upgrade() -> None:
|
||||
op.add_column(
|
||||
"storage_objects",
|
||||
sa.Column(
|
||||
"trash_key",
|
||||
sa.String(length=1100),
|
||||
nullable=True,
|
||||
comment="Path inside the trash bucket where soft-deleted bytes are stored",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
def downgrade() -> None:
|
||||
op.drop_column("storage_objects", "trash_key")
|
||||
Reference in New Issue
Block a user