Skip to content

Commit f2f0c1e

Browse files
authored
Pipeline Versions (#271)
* Adds version tables * Remove organization id * fix alembic * submodule & hotfix * Adds change * Alembic for fkey remove * Submodule change * Submodule merge
1 parent 0d61cb2 commit f2f0c1e

File tree

2 files changed

+53
-1
lines changed

2 files changed

+53
-1
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
"""Pipeline Version table
2+
3+
Revision ID: 89a5f2211130
4+
Revises: 2c0029684bd7
5+
Create Date: 2024-11-21 14:23:59.233725
6+
7+
"""
8+
from alembic import op
9+
import sqlalchemy as sa
10+
from sqlalchemy.dialects import postgresql
11+
12+
# revision identifiers, used by Alembic.
13+
revision = '89a5f2211130'
14+
down_revision = '2c0029684bd7'
15+
branch_labels = None
16+
depends_on = None
17+
18+
19+
def upgrade():
20+
# ### commands auto generated by Alembic - please adjust! ###
21+
op.create_table('pipeline_version',
22+
sa.Column('id', postgresql.UUID(as_uuid=True), nullable=False),
23+
sa.Column('project_id', postgresql.UUID(as_uuid=True), nullable=True),
24+
sa.Column('name', sa.String(), nullable=True),
25+
sa.Column('version_type', sa.String(), nullable=True),
26+
sa.Column('created_by', postgresql.UUID(as_uuid=True), nullable=True),
27+
sa.Column('created_at', sa.DateTime(), nullable=True),
28+
sa.Column('pipeline_dump', sa.JSON(), nullable=True),
29+
sa.ForeignKeyConstraint(['created_by'], ['user.id'], ondelete='SET NULL'),
30+
sa.ForeignKeyConstraint(['project_id'], ['cognition.project.id'], ondelete='CASCADE'),
31+
sa.PrimaryKeyConstraint('id'),
32+
schema='cognition'
33+
)
34+
op.create_index(op.f('ix_cognition_pipeline_version_created_by'), 'pipeline_version', ['created_by'], unique=False, schema='cognition')
35+
op.create_index(op.f('ix_cognition_pipeline_version_project_id'), 'pipeline_version', ['project_id'], unique=False, schema='cognition')
36+
op.add_column('message', sa.Column('version_id', postgresql.UUID(as_uuid=True), nullable=True), schema='cognition')
37+
op.create_index(op.f('ix_cognition_message_version_id'), 'message', ['version_id'], unique=False, schema='cognition')
38+
op.create_foreign_key(None, 'message', 'pipeline_version', ['version_id'], ['id'], source_schema='cognition', referent_schema='cognition', ondelete='SET NULL')
39+
op.drop_constraint('pipeline_logs_strategy_step_id_fkey', 'pipeline_logs', schema='cognition', type_='foreignkey')
40+
# ### end Alembic commands ###
41+
42+
43+
def downgrade():
44+
# ### commands auto generated by Alembic - please adjust! ###
45+
op.drop_constraint(None, 'message', schema='cognition', type_='foreignkey')
46+
op.drop_index(op.f('ix_cognition_message_version_id'), table_name='message', schema='cognition')
47+
op.drop_column('message', 'version_id', schema='cognition')
48+
op.drop_index(op.f('ix_cognition_pipeline_version_project_id'), table_name='pipeline_version', schema='cognition')
49+
op.drop_index(op.f('ix_cognition_pipeline_version_created_by'), table_name='pipeline_version', schema='cognition')
50+
op.drop_table('pipeline_version', schema='cognition')
51+
op.create_foreign_key('pipeline_logs_strategy_step_id_fkey', 'pipeline_logs', 'strategy_step', ['strategy_step_id'], ['id'], source_schema='cognition', referent_schema='cognition', ondelete='CASCADE')
52+
# ### end Alembic commands ###

0 commit comments

Comments
 (0)