Skip to content

Commit

Permalink
Fix import fixes for compatability with OpenStack Liberty Release. Cr…
Browse files Browse the repository at this point in the history
…eate noop methods for Contrail quota driver to support Neutron reservation in Liberty.

Change-Id: Iccaffd488c6db040fdb9daff17252212cb3b38ec
Closes-Bug: #1508467
  • Loading branch information
pupapaik committed Dec 23, 2015
1 parent a44af43 commit 1632233
Show file tree
Hide file tree
Showing 10 changed files with 81 additions and 13 deletions.
5 changes: 4 additions & 1 deletion neutron_plugin_contrail/extensions/ipam.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,11 @@
from neutron.common import exceptions as qexception
from neutron.api import extensions
from neutron import manager
from oslo.config import cfg

try:
from oslo.config import cfg
except ImportError:
from oslo_config import cfg

# Ipam Exceptions
class IpamNotFound(qexception.NotFound):
Expand Down
5 changes: 4 additions & 1 deletion neutron_plugin_contrail/extensions/policy.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,11 @@
from neutron.common import exceptions as qexception
from neutron.api import extensions
from neutron import manager
from oslo.config import cfg

try:
from oslo.config import cfg
except ImportError:
from oslo_config import cfg

# Policy Exceptions
class PolicyNotFound(qexception.NotFound):
Expand Down
12 changes: 10 additions & 2 deletions neutron_plugin_contrail/extensions/vpcroutetable.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,22 @@
from abc import ABCMeta
from abc import abstractmethod

from oslo.config import cfg
try:
from oslo_config import cfg
except ImportError:
from oslo.config import cfg

from neutron.api import extensions
from neutron.api.v2 import attributes as attr
from neutron.api.v2 import base
from neutron.common import exceptions as qexception
from neutron import manager
from neutron.openstack.common import uuidutils

try:
from neutron.openstack.common import uuidutils
except ImportError:
from oslo_utils import uuidutils

from neutron import quota


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@
#
# @author: Hampapur Ajay, Praneet Bachheti, Rudra Rugge, Atul Moghe

from oslo.config import cfg
try:
from oslo_config import cfg
except ImportError:
from oslo.config import cfg

import requests

from neutron.api.v2 import attributes as attr
Expand Down Expand Up @@ -95,7 +99,6 @@ class NeutronPluginContrailCoreV2(neutron_plugin_base_v2.NeutronPluginBaseV2,

# patch VIF_TYPES
portbindings.__dict__['VIF_TYPE_VROUTER'] = 'vrouter'
portbindings.VIF_TYPES.append(portbindings.VIF_TYPE_VROUTER)

def _parse_class_args(self):
"""Parse the contrailplugin.ini file.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,11 @@
import time
import uuid

from oslo.config import cfg
try:
from oslo.config import cfg
except ImportError:
from oslo_config import cfg

from cfgm_common import analytics_client
from cfgm_common import exceptions as vnc_exc
from neutron.common import exceptions as n_exc
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,11 @@
except ImportError:
from neutron_lbaas.extensions import loadbalancer

from neutron.openstack.common import uuidutils
try:
from neutron.openstack.common import uuidutils
except ImportError:
from oslo_utils import uuidutils

from vnc_api.vnc_api import IdPermsType, NoIdError
from vnc_api.vnc_api import LoadbalancerHealthmonitor
from vnc_api.vnc_api import LoadbalancerHealthmonitorType
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,23 @@

import uuid

from oslo.config import cfg
try:
from oslo.config import cfg
except ImportError:
from oslo_config import cfg

from cfgm_common import analytics_client

try:
from neutron.extensions import loadbalancer
except ImportError:
from neutron_lbaas.extensions import loadbalancer
from neutron.openstack.common import uuidutils

try:
from neutron.openstack.common import uuidutils
except ImportError:
from oslo_utils import uuidutils

from neutron.plugins.common import constants
from vnc_api.vnc_api import IdPermsType, NoIdError
from vnc_api.vnc_api import LoadbalancerMember, LoadbalancerMemberType
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,11 @@
from neutron.plugins.common import constants
from neutron.services import provider_configuration as pconf

from neutron.openstack.common import uuidutils
try:
from neutron.openstack.common import uuidutils
except ImportError:
from oslo_utils import uuidutils

from vnc_api.vnc_api import *

from resource_manager import ResourceManager
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,11 @@
except ImportError:
from oslo_log import log as logging

from neutron.openstack.common import uuidutils
try:
from neutron.openstack.common import uuidutils
except ImportError:
from oslo_utils import uuidutils

from vnc_api.vnc_api import IdPermsType, NoIdError
from vnc_api.vnc_api import InstanceIp, VirtualMachineInterface
from vnc_api.vnc_api import SecurityGroup
Expand Down
27 changes: 26 additions & 1 deletion neutron_plugin_contrail/plugins/opencontrail/quota/driver.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,11 @@
except ImportError:
from oslo_log import log as logging

from oslo.config import cfg
try:
from oslo.config import cfg
except ImportError:
from oslo_config import cfg

from httplib2 import Http
import re
import string
Expand All @@ -20,6 +24,11 @@
from cfgm_common import exceptions as vnc_exc
from vnc_api import vnc_api

try:
from neutron.db.quota import api as quota_api
except ImportError:
pass

LOG = logging.getLogger(__name__)

vnc_conn = None
Expand Down Expand Up @@ -188,3 +197,19 @@ def update_quota_limit(cls, context, tenant_id, resource, limit):
set_quota(limit)
proj_obj.set_quota(quota)
cls._get_vnc_conn().project_update(proj_obj)

def make_reservation(self, context, tenant_id, resources, deltas, plugin):
"""This driver does not support reservations.
This routine is provided for backward compatibility purposes with
the API controllers which have now been adapted to make reservations
rather than counting resources and checking limits - as this
routine ultimately does.
"""
return quota_api.ReservationInfo('fake', None, None, None)

def commit_reservation(self, context, reservation_id):
"""Tnis is a noop as this driver does not support reservations."""

def cancel_reservation(self, context, reservation_id):
"""Tnis is a noop as this driver does not support reservations."""

0 comments on commit 1632233

Please sign in to comment.