ai-hackaton-backend/migrations/versions/dba37152ae9a_add_parsing_statuses_to_resumestatus_.py
2025-09-03 14:36:27 +05:00

44 lines
1.5 KiB
Python

"""Add parsing statuses to ResumeStatus enum
Revision ID: dba37152ae9a
Revises: 4e19b8fe4a88
Create Date: 2025-09-02 14:45:30.749202
"""
from typing import Sequence, Union
from alembic import op
import sqlalchemy as sa
import sqlmodel
# revision identifiers, used by Alembic.
revision: str = 'dba37152ae9a'
down_revision: Union[str, Sequence[str], None] = '4e19b8fe4a88'
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None
def upgrade() -> None:
"""Upgrade schema."""
# Add new ENUM values to ResumeStatus
op.execute("ALTER TYPE resumestatus ADD VALUE IF NOT EXISTS 'PARSING'")
op.execute("ALTER TYPE resumestatus ADD VALUE IF NOT EXISTS 'PARSED'")
op.execute("ALTER TYPE resumestatus ADD VALUE IF NOT EXISTS 'PARSE_FAILED'")
# ### commands auto generated by Alembic - please adjust! ###
op.add_column('resume', sa.Column('parsed_data', sa.JSON(), nullable=True))
op.add_column('resume', sa.Column('parse_error', sqlmodel.sql.sqltypes.AutoString(), nullable=True))
# ### end Alembic commands ###
def downgrade() -> None:
"""Downgrade schema."""
# ### commands auto generated by Alembic - please adjust! ###
op.drop_column('resume', 'parse_error')
op.drop_column('resume', 'parsed_data')
# ### end Alembic commands ###
# Note: Cannot remove ENUM values in PostgreSQL, they are permanent once added
# If needed, would require recreating the ENUM type