jamiya / alembic /versions /001_initial_migration.py
jameszokah's picture
Update Alembic configuration and migration scripts: change script location and version path in alembic.ini, add env.py for migration management, create initial migration script for audiobooks table, and implement migration execution in a new migrate.py script.
d4255ec
"""Initial migration
Revision ID: 001
Revises:
Create Date: 2024-03-27
"""
from alembic import op
import sqlalchemy as sa
# revision identifiers, used by Alembic.
revision = '001'
down_revision = None
branch_labels = None
depends_on = None
def upgrade() -> None:
op.create_table(
'audiobooks',
sa.Column('id', sa.String(36), primary_key=True),
sa.Column('title', sa.String(255), nullable=False),
sa.Column('author', sa.String(255), nullable=False),
sa.Column('voice_id', sa.String(50), nullable=False),
sa.Column('status', sa.String(20), nullable=False),
sa.Column('text_file_path', sa.String(255), nullable=True),
sa.Column('audio_file_path', sa.String(255), nullable=True),
sa.Column('created_at', sa.DateTime(), server_default=sa.text('CURRENT_TIMESTAMP'), nullable=False),
sa.Column('updated_at', sa.DateTime(), server_default=sa.text('CURRENT_TIMESTAMP'), onupdate=sa.text('CURRENT_TIMESTAMP'), nullable=False),
)
def downgrade() -> None:
op.drop_table('audiobooks')