Coverage for mindsdb / migrations / versions / 2024-11-29_f6dc924079fa_predictor_training_metadata.py: 43%

21 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-01-21 00:36 +0000

1"""predictor_training_metadata 

2 

3Revision ID: f6dc924079fa 

4Revises: a8a3fac369e7 

5Create Date: 2024-11-29 15:06:47.269229 

6 

7""" 

8from alembic import op 

9import sqlalchemy as sa 

10import mindsdb.interfaces.storage.db # noqa 

11 

12# revision identifiers, used by Alembic. 

13revision = 'f6dc924079fa' 

14down_revision = 'a8a3fac369e7' 

15branch_labels = None 

16depends_on = None 

17 

18 

19def upgrade(): 

20 with op.batch_alter_table('predictor', schema=None) as batch_op: 

21 batch_op.add_column(sa.Column('training_metadata', sa.JSON(), nullable=True)) 

22 batch_op.drop_column('is_custom') 

23 batch_op.drop_column('hostname') 

24 

25 predictor_table = sa.Table( 

26 'predictor', 

27 sa.MetaData(), 

28 sa.Column('id', sa.Integer()), 

29 sa.Column('training_metadata', sa.JSON()) 

30 ) 

31 

32 op.execute(predictor_table.update().values(training_metadata={})) 

33 with op.batch_alter_table('predictor', schema=None) as batch_op: 

34 batch_op.alter_column( 

35 'training_metadata', 

36 nullable=False 

37 ) 

38 

39 

40def downgrade(): 

41 with op.batch_alter_table('predictor', schema=None) as batch_op: 

42 batch_op.add_column(sa.Column('hostname', sa.VARCHAR(), nullable=True)) 

43 batch_op.add_column(sa.Column('is_custom', sa.BOOLEAN(), nullable=True)) 

44 batch_op.drop_column('training_metadata')