¡@

Home 

OpenStack Study: 50d5ba354c23_ml2_binding_vif_details.py

OpenStack Index

**** CubicPower OpenStack Study ****

def upgrade(active_plugins=None, options=None):

    if not migration.should_run(active_plugins, migration_for_plugins):

        return

    op.add_column('ml2_port_bindings',

                  sa.Column('vif_details', sa.String(length=4095),

                            nullable=False, server_default=''))

    migr_context = context.get_context()

    with context.begin_transaction():

        for value in ('true', 'false'):

            migr_context.execute(

                "UPDATE ml2_port_bindings SET"

                " vif_details = '{\"port_filter\": %(value)s}'"

                " WHERE cap_port_filter = %(value)s" % {'value': value})

    op.drop_column('ml2_port_bindings', 'cap_port_filter')

**** CubicPower OpenStack Study ****

def downgrade(active_plugins=None, options=None):

    if not migration.should_run(active_plugins, migration_for_plugins):

        return

    op.add_column('ml2_port_bindings',

                  sa.Column('cap_port_filter', sa.Boolean(),

                            nullable=False, default=False))

    migr_context = context.get_context()

    with context.begin_transaction():

        migr_context.execute(

            "UPDATE ml2_port_bindings SET"

            " cap_port_filter = true"

            " WHERE vif_details LIKE '%\"port_filter\": true%'")

    op.drop_column('ml2_port_bindings', 'vif_details')