From 63f58b525ef330223b54cd2e92bbceeffce1eb22 Mon Sep 17 00:00:00 2001 From: Saksham Varma Date: Mon, 13 Jul 2015 13:51:33 -0700 Subject: [PATCH] Moving out cisco n1kv extensions Moving out Cisco N1Kv extensions to the openstack/networking-cisco as part of the second phase vendor-core decomposition Change-Id: Ib95309c7fa00c2afc3ebbfbbcb06ef430e90d6be Depends-on: I408619a82497392a287dce6677673071ffc714f1 Closes-Bug: #1474129 --- .../drivers/cisco/n1kv/extensions/__init__.py | 0 .../ml2/drivers/cisco/n1kv/extensions/n1kv.py | 53 --------- .../ml2/drivers/cisco/n1kv/n1kv_ext_driver.py | 101 ------------------ setup.cfg | 1 - 4 files changed, 155 deletions(-) delete mode 100644 neutron/plugins/ml2/drivers/cisco/n1kv/extensions/__init__.py delete mode 100644 neutron/plugins/ml2/drivers/cisco/n1kv/extensions/n1kv.py delete mode 100644 neutron/plugins/ml2/drivers/cisco/n1kv/n1kv_ext_driver.py diff --git a/neutron/plugins/ml2/drivers/cisco/n1kv/extensions/__init__.py b/neutron/plugins/ml2/drivers/cisco/n1kv/extensions/__init__.py deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/neutron/plugins/ml2/drivers/cisco/n1kv/extensions/n1kv.py b/neutron/plugins/ml2/drivers/cisco/n1kv/extensions/n1kv.py deleted file mode 100644 index 726779c9df2..00000000000 --- a/neutron/plugins/ml2/drivers/cisco/n1kv/extensions/n1kv.py +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright 2014 Cisco Systems, Inc. -# All Rights Reserved. -# -# 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. - -from networking_cisco.plugins.ml2.drivers.cisco.n1kv import constants - -from neutron.api import extensions -from neutron.api.v2 import attributes - - -PROFILE = constants.N1KV_PROFILE -EXTENDED_ATTRIBUTES_2_0 = { - 'ports': {PROFILE: { - 'allow_post': True, - 'allow_put': False, - 'default': attributes.ATTR_NOT_SPECIFIED, - 'is_visible': True}}} - - -class N1kv(extensions.ExtensionDescriptor): - - @classmethod - def get_name(cls): - return "Cisco Nexus1000V Profile Extension" - - @classmethod - def get_alias(cls): - return "n1kv" - - @classmethod - def get_description(cls): - return _("Add new policy profile attribute to port resource.") - - @classmethod - def get_updated(cls): - return "2014-11-23T13:33:25-00:00" - - def get_extended_resources(self, version): - if version == "2.0": - return EXTENDED_ATTRIBUTES_2_0 - else: - return {} diff --git a/neutron/plugins/ml2/drivers/cisco/n1kv/n1kv_ext_driver.py b/neutron/plugins/ml2/drivers/cisco/n1kv/n1kv_ext_driver.py deleted file mode 100644 index 9fc6ec9fdfa..00000000000 --- a/neutron/plugins/ml2/drivers/cisco/n1kv/n1kv_ext_driver.py +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright 2015 Cisco Systems, Inc. -# All rights reserved. -# -# 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. - -"""Extensions Driver for Cisco Nexus1000V.""" - -from oslo_config import cfg -from oslo_log import log -from oslo_utils import uuidutils - -from networking_cisco.plugins.ml2.drivers.cisco.n1kv import ( - constants) -from networking_cisco.plugins.ml2.drivers.cisco.n1kv import ( - exceptions as n1kv_exc) -from networking_cisco.plugins.ml2.drivers.cisco.n1kv import ( - n1kv_db) - -from neutron.api import extensions as api_extensions -from neutron.api.v2 import attributes -from neutron.i18n import _LE -from neutron.plugins.ml2.common import exceptions as ml2_exc -from neutron.plugins.ml2 import driver_api as api -from neutron.plugins.ml2.drivers.cisco.n1kv import extensions - -LOG = log.getLogger(__name__) - - -class CiscoN1kvExtensionDriver(api.ExtensionDriver): - """Cisco N1KV ML2 Extension Driver.""" - - # List of supported extensions for cisco Nexus1000V. - _supported_extension_alias = "n1kv" - - def initialize(self): - api_extensions.append_api_extensions_path(extensions.__path__) - - @property - def extension_alias(self): - """ - Supported extension alias. - - :returns: alias identifying the core API extension supported - by this driver - """ - return self._supported_extension_alias - - def process_create_port(self, context, data, result): - """Implementation of abstract method from ExtensionDriver class.""" - port_id = result.get('id') - policy_profile_attr = data.get(constants.N1KV_PROFILE) - if not attributes.is_attr_set(policy_profile_attr): - policy_profile_attr = (cfg.CONF.ml2_cisco_n1kv. - default_policy_profile) - with context.session.begin(subtransactions=True): - try: - n1kv_db.get_policy_binding(port_id, context.session) - except n1kv_exc.PortBindingNotFound: - if not uuidutils.is_uuid_like(policy_profile_attr): - policy_profile = n1kv_db.get_policy_profile_by_name( - policy_profile_attr, - context.session) - if policy_profile: - policy_profile_attr = policy_profile.id - else: - LOG.error(_LE("Policy Profile %(profile)s does " - "not exist."), - {"profile": policy_profile_attr}) - raise ml2_exc.MechanismDriverError() - elif not (n1kv_db.get_policy_profile_by_uuid( - context.session, - policy_profile_attr)): - LOG.error(_LE("Policy Profile %(profile)s does not " - "exist."), - {"profile": policy_profile_attr}) - raise ml2_exc.MechanismDriverError() - n1kv_db.add_policy_binding(port_id, - policy_profile_attr, - context.session) - result[constants.N1KV_PROFILE] = policy_profile_attr - - def extend_port_dict(self, session, model, result): - """Implementation of abstract method from ExtensionDriver class.""" - port_id = result.get('id') - with session.begin(subtransactions=True): - try: - res = n1kv_db.get_policy_binding(port_id, session) - result[constants.N1KV_PROFILE] = res.profile_id - except n1kv_exc.PortBindingNotFound: - # Do nothing if the port binding is not found. - pass diff --git a/setup.cfg b/setup.cfg index e3f0f05bb9e..499c3e01a7b 100644 --- a/setup.cfg +++ b/setup.cfg @@ -195,7 +195,6 @@ neutron.ml2.extension_drivers = test = neutron.tests.unit.plugins.ml2.drivers.ext_test:TestExtensionDriver testdb = neutron.tests.unit.plugins.ml2.drivers.ext_test:TestDBExtensionDriver port_security = neutron.plugins.ml2.extensions.port_security:PortSecurityExtensionDriver - cisco_n1kv_ext = neutron.plugins.ml2.drivers.cisco.n1kv.n1kv_ext_driver:CiscoN1kvExtensionDriver neutron.openstack.common.cache.backends = memory = neutron.openstack.common.cache._backends.memory:MemoryBackend neutron.ipam_drivers =