awesome-fastapi-projects/migrations/versions/d8fc955c639b_add_repo_dependency_and_repodependency_.py
Vladyslav Fedoriuk a0310ea3b1 Set up tests
2023-07-29 00:17:38 +02:00

53 lines
1.5 KiB
Python

"""Add Repo, Dependency, and RepoDependency tables
Revision ID: d8fc955c639b
Revises:
Create Date: 2023-07-28 23:41:00.169286
"""
import sqlalchemy as sa
from alembic import op
# revision identifiers, used by Alembic.
revision = "d8fc955c639b"
down_revision = None
branch_labels = None
depends_on = None
def upgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
op.create_table(
"dependency",
sa.Column("id", sa.Integer(), nullable=False),
sa.Column("name", sa.String(length=255), nullable=False),
sa.PrimaryKeyConstraint("id"),
sa.UniqueConstraint("name"),
)
op.create_table(
"repo",
sa.Column("id", sa.Integer(), nullable=False),
sa.Column("url", sa.String(), nullable=False),
sa.PrimaryKeyConstraint("id"),
sa.UniqueConstraint("url"),
)
op.create_table(
"repo_dependency",
sa.Column("repo_id", sa.Integer(), nullable=False),
sa.Column("dependency_id", sa.Integer(), nullable=False),
sa.ForeignKeyConstraint(
["dependency_id"], ["dependency.id"], ondelete="CASCADE"
),
sa.ForeignKeyConstraint(["repo_id"], ["repo.id"], ondelete="CASCADE"),
sa.PrimaryKeyConstraint("repo_id", "dependency_id"),
)
# ### end Alembic commands ###
def downgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
op.drop_table("repo_dependency")
op.drop_table("repo")
op.drop_table("dependency")
# ### end Alembic commands ###