in annotation/alembic/versions/36bff2d016f7_expand_validationschema.py [0:0]
def upgrade():
"""
Add `cascade` delete option on fk and
add new job type - validation_only.
"""
op.drop_constraint(DOCS_TASK_ID_FK, "annotated_docs", type_="foreignkey")
op.create_foreign_key(
DOCS_TASK_ID_FK,
"annotated_docs",
"tasks",
["task_id"],
["id"],
ondelete="cascade",
)
op.drop_constraint(
JOB_ANNOTATOR_USER_ID_FK,
"association_job_annotator",
type_="foreignkey",
)
op.drop_constraint(
JOB_ANNOTATOR_JOB_ID_FK,
"association_job_annotator",
type_="foreignkey",
)
op.create_foreign_key(
JOB_ANNOTATOR_USER_ID_FK,
"association_job_annotator",
"jobs",
["job_id"],
["job_id"],
ondelete="cascade",
)
op.create_foreign_key(
JOB_ANNOTATOR_JOB_ID_FK,
"association_job_annotator",
"users",
["user_id"],
["user_id"],
ondelete="cascade",
)
op.drop_constraint(
JOB_OWNER_JOB_ID_FK, "association_job_owner", type_="foreignkey"
)
op.drop_constraint(
JOB_OWNER_USER_ID_FK, "association_job_owner", type_="foreignkey"
)
op.create_foreign_key(
JOB_OWNER_JOB_ID_FK,
"association_job_owner",
"jobs",
["job_id"],
["job_id"],
ondelete="cascade",
)
op.create_foreign_key(
JOB_OWNER_USER_ID_FK,
"association_job_owner",
"users",
["user_id"],
["user_id"],
ondelete="cascade",
)
op.drop_constraint(
JOB_VALIDATOR_JOB_ID_FK,
"association_job_validator",
type_="foreignkey",
)
op.drop_constraint(
JOB_VALIDATOR_USER_ID_FK,
"association_job_validator",
type_="foreignkey",
)
op.create_foreign_key(
JOB_VALIDATOR_JOB_ID_FK,
"association_job_validator",
"jobs",
["job_id"],
["job_id"],
ondelete="cascade",
)
op.create_foreign_key(
JOB_VALIDATOR_USER_ID_FK,
"association_job_validator",
"users",
["user_id"],
["user_id"],
ondelete="cascade",
)
op.drop_constraint(TASKS_JOB_ID_FK, "tasks", type_="foreignkey")
op.create_foreign_key(
TASKS_JOB_ID_FK,
"tasks",
"jobs",
["job_id"],
["job_id"],
ondelete="cascade",
)
op.execute(
"ALTER TYPE validation_type ADD VALUE IF NOT EXISTS 'validation_only'"
)