diff --git a/pyproject.toml b/pyproject.toml index 891f3a7..d767e7b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "welearn-database" -version = "1.5.3.dev0" +version = "1.5.3.dev1" description = "All stuff related to relationnal database from the WeLearn project" authors = [ {name = "Théo",email = "theo.nardin@cri-paris.org"} diff --git a/welearn_database/alembic/versions/f10903998081_keycloack_id_for_user_id.py b/welearn_database/alembic/versions/f10903998081_keycloack_id_for_user_id.py new file mode 100644 index 0000000..3fe96ca --- /dev/null +++ b/welearn_database/alembic/versions/f10903998081_keycloack_id_for_user_id.py @@ -0,0 +1,30 @@ +"""keycloack_id_for_user_id + +Revision ID: f10903998081 +Revises: 5d46d7920342 +Create Date: 2026-09-23 14:27:26.389768 + +""" + +from typing import Sequence, Union + +import sqlalchemy as sa +from alembic import op + +# revision identifiers, used by Alembic. +revision: str = "f10903998081" +down_revision: Union[str, None] = "5d46d7920342" +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + op.add_column( + "inferred_user", + sa.Column("keycloak_id", sa.Uuid(), nullable=True, unique=True), + schema="user_related", + ) + + +def downgrade() -> None: + op.drop_column("inferred_user", "keycloak_id", schema="user_related") diff --git a/welearn_database/data/models/user_related.py b/welearn_database/data/models/user_related.py index d117807..3b77cb5 100644 --- a/welearn_database/data/models/user_related.py +++ b/welearn_database/data/models/user_related.py @@ -215,6 +215,7 @@ class InferredUser(Base): id: Mapped[UUID] = mapped_column( types.Uuid, primary_key=True, nullable=False, server_default="gen_random_uuid()" ) + keycloak_id: Mapped[UUID] = mapped_column(types.Uuid, nullable=True) origin_referrer: Mapped[str | None] university_title: Mapped[str | None] role: Mapped[str | None]