2024-02-23-15-55_e7339aab6549.py 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. """add action
  2. Revision ID: e7339aab6549
  3. Revises: 283e8cbdf17a
  4. Create Date: 2024-02-23 15:55:52.440984
  5. """
  6. from typing import Sequence, Union
  7. from alembic import op
  8. import sqlalchemy as sa
  9. import sqlmodel
  10. # revision identifiers, used by Alembic.
  11. revision: str = "e7339aab6549"
  12. down_revision: Union[str, None] = "283e8cbdf17a"
  13. branch_labels: Union[str, Sequence[str], None] = None
  14. depends_on: Union[str, Sequence[str], None] = None
  15. def upgrade() -> None:
  16. # ### commands auto generated by Alembic - please adjust! ###
  17. op.create_table(
  18. "action",
  19. sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),
  20. sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),
  21. sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
  22. sa.Column("name", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
  23. sa.Column("description", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
  24. sa.Column("openapi_schema", sa.JSON(), nullable=True),
  25. sa.Column("authentication", sa.JSON(), nullable=True),
  26. sa.Column("extra", sa.JSON(), nullable=True),
  27. sa.Column("metadata", sa.JSON(), nullable=True),
  28. sa.Column("operation_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
  29. sa.Column("url", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
  30. sa.Column("method", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
  31. sa.Column("path_param_schema", sa.JSON(), nullable=True),
  32. sa.Column("query_param_schema", sa.JSON(), nullable=True),
  33. sa.Column("body_param_schema", sa.JSON(), nullable=True),
  34. sa.Column("body_type", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
  35. sa.Column("function_def", sa.JSON(), nullable=True),
  36. sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),
  37. sa.Column("use_for_everyone", sa.Boolean(), default=False, nullable=False),
  38. sa.PrimaryKeyConstraint("id"),
  39. )
  40. op.add_column("run", sa.Column("extra_body", sa.JSON(), nullable=True))
  41. op.execute(
  42. " ALTER TABLE token_relation MODIFY COLUMN relation_type enum('Assistant','File','Thread','Action') CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL;"
  43. )
  44. # ### end Alembic commands ###
  45. def downgrade() -> None:
  46. # ### commands auto generated by Alembic - please adjust! ###
  47. op.drop_table("action")
  48. op.drop_column("run", "extra_body")
  49. op.execute(
  50. "ALTER TABLE token_relation MODIFY COLUMN relation_type enum('Assistant','File','Thread') CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL;"
  51. )
  52. # ### end Alembic commands ###