1
# Copyright 2013 OpenStack Foundation
3
# Licensed under the Apache License, Version 2.0 (the "License"); you may
4
# not use this file except in compliance with the License. You may obtain
5
# a copy of the License at
7
# http://www.apache.org/licenses/LICENSE-2.0
9
# Unless required by applicable law or agreed to in writing, software
10
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12
# License for the specific language governing permissions and limitations
16
"""DB Migration for ML2 VXLAN Type Driver
18
Revision ID: 477a4488d3f4
20
Create Date: 2013-07-09 14:14:33.158502
24
# revision identifiers, used by Alembic.
25
revision = '477a4488d3f4'
26
down_revision = '20ae61555e95'
28
# Change to ['*'] if this migration applies to all plugins
30
migration_for_plugins = [
31
'neutron.plugins.ml2.plugin.Ml2Plugin'
34
from alembic import op
35
import sqlalchemy as sa
38
from neutron.db import migration
41
def upgrade(active_plugins=None, options=None):
42
if not migration.should_run(active_plugins, migration_for_plugins):
46
'ml2_vxlan_allocations',
47
sa.Column('vxlan_vni', sa.Integer, nullable=False,
49
sa.Column('allocated', sa.Boolean, nullable=False),
50
sa.PrimaryKeyConstraint('vxlan_vni')
54
'ml2_vxlan_endpoints',
55
sa.Column('ip_address', sa.String(length=64)),
56
sa.Column('udp_port', sa.Integer(), nullable=False,
58
sa.PrimaryKeyConstraint('ip_address', 'udp_port')
62
def downgrade(active_plugins=None, options=None):
63
if not migration.should_run(active_plugins, migration_for_plugins):
66
op.drop_table('ml2_vxlan_allocations')
67
op.drop_table('ml2_vxlan_endpoints')