From 878e158ac89b97af9e7f9499663bd1524756a4f1 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Wed, 18 Oct 2023 17:03:15 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20chore(alembic):=20add=20migratio?= =?UTF-8?q?n=20script=20for=20changes=20related=20to=20the=20store=20?= =?UTF-8?q?=F0=9F=94=A7=20chore(flow.py):=20add=20new=20field=20'is=5Fcomp?= =?UTF-8?q?onent'=20to=20the=20Flow=20model=20to=20support=20store=20funct?= =?UTF-8?q?ionality=20=F0=9F=94=A7=20chore(user.py):=20add=20new=20field?= =?UTF-8?q?=20'store=5Fapi=5Fkey'=20to=20the=20User=20model=20to=20support?= =?UTF-8?q?=20store=20functionality?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../595c9c2a2ad4_changes_for_the_store.py | 41 +++++++++++++++++++ .../services/database/models/flow/flow.py | 1 + .../services/database/models/user/user.py | 1 + 3 files changed, 43 insertions(+) create mode 100644 src/backend/langflow/alembic/versions/595c9c2a2ad4_changes_for_the_store.py diff --git a/src/backend/langflow/alembic/versions/595c9c2a2ad4_changes_for_the_store.py b/src/backend/langflow/alembic/versions/595c9c2a2ad4_changes_for_the_store.py new file mode 100644 index 000000000..6ff6079f6 --- /dev/null +++ b/src/backend/langflow/alembic/versions/595c9c2a2ad4_changes_for_the_store.py @@ -0,0 +1,41 @@ +"""Changes for the store + +Revision ID: 595c9c2a2ad4 +Revises: eb5866d51fd2 +Create Date: 2023-10-18 16:27:37.781613 + +""" +from typing import Sequence, Union + +from alembic import op +import sqlalchemy as sa +import sqlmodel + + +# revision identifiers, used by Alembic. +revision: str = '595c9c2a2ad4' +down_revision: Union[str, None] = 'eb5866d51fd2' +branch_labels: Union[str, Sequence[str], None] = None +depends_on: Union[str, Sequence[str], None] = None + + +def upgrade() -> None: + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('flow', schema=None) as batch_op: + batch_op.add_column(sa.Column('is_component', sa.Boolean(), nullable=False)) + + with op.batch_alter_table('user', schema=None) as batch_op: + batch_op.add_column(sa.Column('store_api_key', sqlmodel.sql.sqltypes.AutoString(), nullable=True)) + + # ### end Alembic commands ### + + +def downgrade() -> None: + # ### commands auto generated by Alembic - please adjust! ### + with op.batch_alter_table('user', schema=None) as batch_op: + batch_op.drop_column('store_api_key') + + with op.batch_alter_table('flow', schema=None) as batch_op: + batch_op.drop_column('is_component') + + # ### end Alembic commands ### diff --git a/src/backend/langflow/services/database/models/flow/flow.py b/src/backend/langflow/services/database/models/flow/flow.py index e578f37c4..83d18b4eb 100644 --- a/src/backend/langflow/services/database/models/flow/flow.py +++ b/src/backend/langflow/services/database/models/flow/flow.py @@ -15,6 +15,7 @@ class FlowBase(SQLModelSerializable): name: str = Field(index=True) description: Optional[str] = Field(index=True) data: Optional[Dict] = Field(default=None, nullable=True) + is_component: bool = Field(default=False) @validator("data") def validate_json(v): diff --git a/src/backend/langflow/services/database/models/user/user.py b/src/backend/langflow/services/database/models/user/user.py index b1f514531..1f769c8ec 100644 --- a/src/backend/langflow/services/database/models/user/user.py +++ b/src/backend/langflow/services/database/models/user/user.py @@ -25,6 +25,7 @@ class User(SQLModelSerializable, table=True): back_populates="user", sa_relationship_kwargs={"cascade": "delete"}, ) + store_api_key: str = Field(default=None, nullable=True) flows: list["Flow"] = Relationship(back_populates="user")