Coverage for mindsdb / migrations / versions / 2025-02-19_11347c213b36_added_metadata_to_projects.py: 42%

24 statements  

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

1"""added_metadata_to_projects 

2 

3Revision ID: 11347c213b36 

4Revises: 4521dafe89ab 

5Create Date: 2025-02-19 18:46:24.014843 

6 

7""" 

8from alembic import op 

9from sqlalchemy.orm.attributes import flag_modified 

10import sqlalchemy as sa 

11 

12import mindsdb.interfaces.storage.db as db 

13from mindsdb.utilities.config import config 

14 

15 

16# revision identifiers, used by Alembic. 

17revision = '11347c213b36' 

18down_revision = '4521dafe89ab' 

19branch_labels = None 

20depends_on = None 

21 

22 

23def upgrade(): 

24 with op.batch_alter_table('project', schema=None) as batch_op: 

25 batch_op.add_column(sa.Column('metadata', sa.JSON(), nullable=True)) 

26 

27 conn = op.get_bind() 

28 session = sa.orm.Session(bind=conn) 

29 session.commit() 

30 

31 project = session.query(db.Project).filter_by(name='mindsdb').first() 

32 if project: 

33 project.name = config.get('default_project') 

34 project.metadata_ = {"is_default": True} 

35 flag_modified(project, 'metadata_') 

36 session.commit() 

37 

38 

39def downgrade(): 

40 with op.batch_alter_table('project', schema=None) as batch_op: 

41 batch_op.drop_column('metadata')