in backend/migrations/versions/46b528bd81dc_initial_migration.py [0:0]
def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.create_table('bms_servers',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('name', sa.String(), nullable=True),
sa.Column('create_time', sa.DateTime(), nullable=True),
sa.Column('state', sa.String(), nullable=True),
sa.Column('machine_type', sa.String(), nullable=True),
sa.Column('luns', sa.JSON(), nullable=True),
sa.Column('networks', sa.JSON(), nullable=True),
sa.Column('deleted', sa.Boolean(), nullable=True),
sa.Column('secret_name', sa.String(), nullable=True),
sa.Column('cpu', sa.String(), nullable=True),
sa.Column('socket', sa.String(), nullable=True),
sa.Column('ram', sa.String(), nullable=True),
sa.PrimaryKeyConstraint('id'),
sa.UniqueConstraint('name')
)
op.create_table('projects',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('name', sa.String(), nullable=False),
sa.Column('vpc', sa.String(), nullable=False),
sa.Column('subnet', sa.String(), nullable=False),
sa.Column('service_account', sa.String(), nullable=False),
sa.Column('description', sa.String(), nullable=False),
sa.PrimaryKeyConstraint('id')
)
op.create_table('db_assessments',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('project_id', sa.Integer(), nullable=True),
sa.Column('path', sa.String(), nullable=False),
sa.Column('uploaded_at', sa.DateTime(), nullable=True),
sa.ForeignKeyConstraint(['project_id'], ['projects.id'], ),
sa.PrimaryKeyConstraint('id')
)
op.create_table('waves',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('name', sa.String(), nullable=True),
sa.Column('project_id', sa.Integer(), nullable=False),
sa.Column('is_running', sa.Boolean(), nullable=True),
sa.Column('description', sa.String(), nullable=True),
sa.ForeignKeyConstraint(['project_id'], ['projects.id'], ),
sa.PrimaryKeyConstraint('id')
)
op.create_table('operations',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('wave_id', sa.Integer(), nullable=True),
sa.Column('operation_type', sqlalchemy_utils.types.choice.ChoiceType(OperationType, impl=sa.String(20)), nullable=True),
sa.Column('status', sqlalchemy_utils.types.choice.ChoiceType(OperationStatus, impl=sa.String(20)), nullable=True),
sa.Column('started_at', sa.DateTime(), nullable=True),
sa.Column('completed_at', sa.DateTime(), nullable=True),
sa.ForeignKeyConstraint(['wave_id'], ['waves.id'], ),
sa.PrimaryKeyConstraint('id')
)
op.create_table('source_dbs',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('server', sa.String(), nullable=False),
sa.Column('oracle_version', sa.String(), nullable=False),
sa.Column('oracle_edition', sa.String(), nullable=True),
sa.Column('db_type', sqlalchemy_utils.types.choice.ChoiceType(SourceDBType, impl=sa.String(10)), nullable=True),
sa.Column('rac_nodes', sa.Integer(), nullable=True),
sa.Column('fe_rac_nodes', sa.Integer(), nullable=True),
sa.Column('arch', sa.String(), nullable=False),
sa.Column('cores', sa.Integer(), nullable=False),
sa.Column('ram', sa.Integer(), nullable=False),
sa.Column('allocated_memory', sa.Integer(), nullable=False),
sa.Column('db_name', sa.String(), nullable=False),
sa.Column('db_size', sa.Numeric(), nullable=False),
sa.Column('status', sa.String(), nullable=True),
sa.Column('project_id', sa.Integer(), nullable=False),
sa.Column('wave_id', sa.Integer(), nullable=True),
sa.ForeignKeyConstraint(['project_id'], ['projects.id'], ),
sa.ForeignKeyConstraint(['wave_id'], ['waves.id'], ),
sa.PrimaryKeyConstraint('id'),
sa.UniqueConstraint('server', 'db_name')
)
op.create_table('configs',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('db_id', sa.Integer(), nullable=False),
sa.Column('install_config_values', sa.JSON(), nullable=True),
sa.Column('db_params_values', sa.JSON(), nullable=True),
sa.Column('data_mounts_values', sa.JSON(), nullable=True),
sa.Column('asm_config_values', sa.JSON(), nullable=True),
sa.Column('rac_config_values', sa.JSON(), nullable=True),
sa.Column('misc_config_values', sa.JSON(), nullable=True),
sa.Column('created_at', sa.DateTime(), nullable=True),
sa.ForeignKeyConstraint(['db_id'], ['source_dbs.id'], ),
sa.PrimaryKeyConstraint('id'),
sa.UniqueConstraint('db_id')
)
op.create_table('mappings',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('db_id', sa.Integer(), nullable=False),
sa.Column('bms_id', sa.Integer(), nullable=False),
sa.Column('rac_node', sa.Integer(), nullable=True),
sa.Column('is_deployable', sa.Boolean(), server_default='1', nullable=True),
sa.ForeignKeyConstraint(['bms_id'], ['bms_servers.id'], ),
sa.ForeignKeyConstraint(['db_id'], ['source_dbs.id'], ),
sa.PrimaryKeyConstraint('id'),
sa.UniqueConstraint('db_id', 'bms_id')
)
op.create_table('operation_history',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('mapping_id', sa.Integer(), nullable=False),
sa.Column('wave_id', sa.Integer(), nullable=False),
sa.Column('operation_id', sa.Integer(), nullable=False),
sa.Column('operation_type', sqlalchemy_utils.types.choice.ChoiceType(OperationType, impl=sa.String(20)), nullable=True),
sa.Column('step', sa.String(length=20), nullable=True),
sa.Column('step_upd_at', sa.DateTime(), nullable=True),
sa.Column('status', sqlalchemy_utils.types.choice.ChoiceType(OperationStatus, impl=sa.String(20)), nullable=True),
sa.Column('started_at', sa.DateTime(), nullable=True),
sa.Column('completed_at', sa.DateTime(), nullable=True),
sa.ForeignKeyConstraint(['mapping_id'], ['mappings.id'], ),
sa.ForeignKeyConstraint(['operation_id'], ['operations.id'], ),
sa.ForeignKeyConstraint(['wave_id'], ['waves.id'], ),
sa.PrimaryKeyConstraint('id')
)