Cisco: Set correct nullable for switch_ip, instance_id, vlan_id

Corrected the following model according to database
content:
 - NOT NULL for NexusPortBinding switch_ip and instance_id

In migrations folsom_initial was set incorrect nullable parameter:
- Set vlan_id NOT NULL in cisco_nexusport_bindings.

Partial-Bug: #1296282

Change-Id: Ie5315fcbf227025c30ab4a4b97ec2a140ee3923c
This commit is contained in:
Ann Kamyshnikova 2014-04-22 11:34:18 +04:00
parent e7b63f945a
commit cefe7e69c1
3 changed files with 57 additions and 3 deletions

View File

@ -0,0 +1,54 @@
# Copyright 2014 OpenStack Foundation
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
"""set_not_null_vlan_id_cisco
Revision ID: 6be312499f9
Revises: d06e871c0d5
Create Date: 2014-03-27 14:38:12.571173
"""
# revision identifiers, used by Alembic.
revision = '6be312499f9'
down_revision = 'd06e871c0d5'
# Change to ['*'] if this migration applies to all plugins
migration_for_plugins = [
'neutron.plugins.cisco.network_plugin.PluginV2'
]
from alembic import op
import sqlalchemy as sa
from neutron.db import migration
def upgrade(active_plugins=None, options=None):
if not migration.should_run(active_plugins, migration_for_plugins):
return
op.alter_column('cisco_nexusport_bindings', 'vlan_id', nullable=False,
existing_type=sa.Integer)
def downgrade(active_plugins=None, options=None):
if not migration.should_run(active_plugins, migration_for_plugins):
return
op.alter_column('cisco_nexusport_bindings', 'vlan_id', nullable=True,
existing_type=sa.Integer)

View File

@ -1 +1 @@
d06e871c0d5
6be312499f9

View File

@ -28,8 +28,8 @@ class NexusPortBinding(model_base.BASEV2):
id = sa.Column(sa.Integer, primary_key=True, autoincrement=True)
port_id = sa.Column(sa.String(255))
vlan_id = sa.Column(sa.Integer, nullable=False)
switch_ip = sa.Column(sa.String(255))
instance_id = sa.Column(sa.String(255))
switch_ip = sa.Column(sa.String(255), nullable=False)
instance_id = sa.Column(sa.String(255), nullable=False)
def __repr__(self):
"""Just the binding, without the id key."""