Merge "Preparing for Pike support 2 (neutron_lib context)"

This commit is contained in:
Zuul 2017-12-15 18:11:51 +00:00 committed by Gerrit Code Review
commit 7847669632
39 changed files with 97 additions and 84 deletions

View File

@ -10,7 +10,10 @@
# License for the specific language governing permissions and limitations
# under the License.
from neutron import context as n_ctx
import sys
from neutron import context as old_context
from neutron_lib import context as n_context
from oslo_config import cfg
from oslo_log import log as logging
from oslo_utils import importutils
@ -22,6 +25,29 @@ LOG = logging.getLogger(__name__)
cfg.CONF.import_group('keystone_authtoken', 'keystonemiddleware.auth_token')
def get_current_context():
i = 1
try:
while True:
for val in sys._getframe(i).f_locals.itervalues():
# REVISIT (Sumit); In Ocata, neutron is still
# using the neutron_lib context, hence we need
# to check for both. This should be changed in
# Pike to only check for the neutron_lib context.
if isinstance(val, n_context.Context) or (
isinstance(val, old_context.Context)):
return val
i = i + 1
except Exception:
return
def get_current_session():
ctx = get_current_context()
if ctx:
return ctx.session
def get_resource_plural(resource):
if resource.endswith('y'):
resource_plural = resource.replace('y', 'ies')
@ -48,7 +74,7 @@ def load_plugin(namespace, plugin):
def admin_context(context):
admin_context = n_ctx.get_admin_context()
admin_context = n_context.get_admin_context()
admin_context._session = context.session
return admin_context

View File

@ -25,8 +25,6 @@ sys.modules['octavia.common.config.cfg'] = cfg
from octavia.amphorae.driver_exceptions import exceptions as driver_except
from octavia.amphorae.drivers.haproxy import rest_api_driver
from octavia.common.jinja.haproxy import jinja_cfg
from octavia.i18n import _LE
from octavia.i18n import _LW
from oslo_config import cfg
import requests
@ -96,10 +94,10 @@ class AmphoraAPIClient(rest_api_driver.AmphoraAPIClient):
resp=r))
return r
except (requests.ConnectionError, requests.Timeout):
LOG.warning(_LW("Could not connect to instance. Retrying."))
LOG.warning("Could not connect to instance. Retrying.")
time.sleep(CONF.haproxy_amphora.connection_retry_interval)
LOG.error(_LE("Connection retries (currently set to %s) "
"exhausted. The amphora is unavailable."),
LOG.error("Connection retries (currently set to %s) "
"exhausted. The amphora is unavailable.",
CONF.haproxy_amphora.connection_max_retries)
raise driver_except.TimeOutException()

View File

@ -21,8 +21,8 @@ from gbpservice.contrib.nfp.config_orchestrator.handlers.notification import (
handler as notif_handler)
from gbpservice.nfp.lib import transport
from neutron import context as ctx
from neutron.tests import base
from neutron_lib import context as ctx
class TestContext(object):

View File

@ -12,10 +12,10 @@
import netaddr
from neutron import context
from neutron.db import common_db_mixin
from neutron_lib.api import validators
from neutron_lib import constants
from neutron_lib import context
from neutron_lib.db import model_base
from oslo_log import helpers as log
from oslo_utils import uuidutils

View File

@ -10,9 +10,6 @@
# License for the specific language governing permissions and limitations
# under the License.
import sys
from neutron import context as n_context
from neutron.db import models_v2
from neutron_lib.db import model_base
from neutron_lib import exceptions as nexc
@ -21,6 +18,7 @@ from oslo_utils import uuidutils
import sqlalchemy as sa
from sqlalchemy import orm
from gbpservice.common import utils as gbp_utils
from gbpservice.neutron.db.grouppolicy import group_policy_db as gpdb
from gbpservice.neutron.extensions import group_policy as gpolicy
from gbpservice.neutron.services.grouppolicy.common import exceptions
@ -28,19 +26,7 @@ from gbpservice.neutron.services.grouppolicy.common import utils
def get_current_context():
i = 1
not_found = True
try:
while not_found:
for val in sys._getframe(i).f_locals.values():
if isinstance(val, n_context.Context):
ctx = val
not_found = False
break
i = i + 1
return ctx
except Exception:
return
return gbp_utils.get_current_context()
class AddressScopeUpdateForL3PNotSupported(nexc.BadRequest):

View File

@ -10,11 +10,20 @@
# License for the specific language governing permissions and limitations
# under the License.
from neutron.db import api as db_api
from neutron_lib import context as lib_context
# REVISIT(Sumit): The neutron_lib context uses
# a neutron_lib version of db_api. In ocata this
# version of the db_api is different from the
# db_api in neutron, and does not work for GBP.
# Revisit for Pike.
lib_context.db_api = db_api
from neutron.callbacks import events
from neutron.callbacks import registry
from neutron.callbacks import resources
from neutron.db import address_scope_db
from neutron.db import api as db_api
from neutron.db import common_db_mixin
from neutron.db import l3_db
from neutron.db.models import securitygroup as sg_models

View File

@ -33,27 +33,11 @@ def get_extensions_path(service_plugins=None):
extensions.get_extensions_path = get_extensions_path
import sys
from neutron import context as n_context
from gbpservice.network.neutronv2 import local_api
from gbpservice.common import utils as gbp_utils
def get_current_session():
i = 1
not_found = True
try:
while not_found:
for val in sys._getframe(i).f_locals.itervalues():
if isinstance(val, n_context.Context):
ctx = val
not_found = False
break
i = i + 1
return ctx.session
except Exception:
return
return gbp_utils.get_current_session()
from neutron.plugins.ml2 import ovo_rpc
@ -69,6 +53,8 @@ ovo_rpc.LOG.error = ovo_rpc.LOG.debug
from neutron.callbacks import registry
from gbpservice.network.neutronv2 import local_api
def notify(resource, event, trigger, **kwargs):
if 'context' in kwargs:

View File

@ -19,9 +19,9 @@ from aim.api import resource as aim_resource
from aim import context as aim_context
from aim import utils as aim_utils
from neutron.agent.linux import dhcp
from neutron import context as n_context
from neutron import policy
from neutron_lib import constants as n_constants
from neutron_lib import context as n_context
from neutron_lib import exceptions as n_exc
from oslo_concurrency import lockutils
from oslo_config import cfg

View File

@ -15,9 +15,9 @@
import sqlalchemy as sa
from sqlalchemy import orm
from neutron import context as nctx
from neutron.db import api as db_api
from neutron.db import models_v2
from neutron_lib import context as nctx
from oslo_db import exception as db_exc
from oslo_log import log as logging

View File

@ -17,11 +17,11 @@ from keystoneclient import exceptions as k_exceptions
from keystoneclient.v2_0 import client as k_client
from neutron.api.v2 import attributes
from neutron.common import exceptions as neutron_exc
from neutron import context as n_context
from neutron.db import models_v2
from neutron.extensions import l3 as ext_l3
from neutron.extensions import securitygroup as ext_sg
from neutron_lib import constants as n_const
from neutron_lib import context as n_context
from neutron_lib.db import model_base
from neutron_lib import exceptions as n_exc
from neutron_lib.plugins import directory

View File

@ -13,12 +13,12 @@
import netaddr
import six
from neutron import context as n_ctx
from neutron.db import api as db_api
from neutron.extensions import portbindings
from neutron.plugins.common import constants as pconst
from neutron.quota import resource_registry
from neutron_lib import constants
from neutron_lib import context as n_ctx
from neutron_lib.plugins import directory
from oslo_log import helpers as log
from oslo_log import log as logging

View File

@ -19,12 +19,12 @@ import webob.exc
import mock
from neutron.api import extensions
from neutron.api.rpc.callbacks.producer import registry
from neutron import context
from neutron.plugins.common import constants
from neutron import policy
from neutron.tests.unit.api import test_extensions
from neutron.tests.unit.db import test_db_base_plugin_v2
from neutron_lib import constants as nl_constants
from neutron_lib import context
from neutron_lib.plugins import directory
from oslo_utils import importutils
from oslo_utils import uuidutils

View File

@ -13,8 +13,8 @@
import webob.exc
from neutron import context as nctx
from neutron.tests.unit.extensions import test_l3
from neutron_lib import context as nctx
from gbpservice.neutron.db.grouppolicy import group_policy_mapping_db as gpmdb
from gbpservice.neutron.services.grouppolicy.common import exceptions as gpexc

View File

@ -14,8 +14,8 @@
import six
import webob.exc
from neutron import context
from neutron.plugins.common import constants
from neutron_lib import context
from oslo_config import cfg
from oslo_utils import uuidutils

View File

@ -11,8 +11,8 @@
# under the License.
import mock
from neutron import context
from neutron.tests.unit import testlib_api
from neutron_lib import context
from oslo_db import exception as exc
from oslo_utils import importutils

View File

@ -13,7 +13,7 @@
from gbpservice.nfp.lib import transport
import mock
from neutron.common import rpc as n_rpc
from neutron import context as ctx
from neutron_lib import context as ctx
from oslo_config import cfg
from oslo_serialization import jsonutils
import six
@ -59,9 +59,12 @@ class TestContext(object):
def get_context(self):
try:
return ctx.Context('some_user', 'some_tenant')
context = ctx.Context(user_id='some_user',
tenant_id='some_tenant', is_advsvc=True)
except Exception:
return ctx.Context('some_user', 'some_tenant')
context = ctx.Context(user_id='admin',
tenant_id='admin', is_advsvc=True, is_admin=True)
return context
def get_test_context(self):
# creating a test context

View File

@ -14,9 +14,9 @@
import copy
import fixtures
import mock
from neutron import context
from neutron.db import api as db_api
from neutron.tests import base
from neutron_lib import context
from gbpservice.nfp.common import constants as nfp_constants
from gbpservice.nfp.common import exceptions as nfp_exc

View File

@ -12,7 +12,7 @@
from gbpservice.nfp.proxy_agent.modules import proxy_agent
import mock
from neutron import context as ctx
from neutron_lib import context as ctx
import unittest2
rpc_manager = proxy_agent.RpcHandler
@ -22,9 +22,12 @@ class TestContext(object):
def get_context(self):
try:
return ctx.Context('some_user', 'some_tenant')
context = ctx.Context(user_id='some_user',
tenant_id='some_tenant', is_advsvc=True)
except Exception:
return ctx.Context('some_user', 'some_tenant')
context = ctx.Context(user_id='admin',
tenant_id='admin', is_advsvc=True, is_admin=True)
return context.to_dict()
"Common class for proxy agent test cases"

View File

@ -12,7 +12,7 @@
from gbpservice.nfp.proxy_agent.notifications import pull
import mock
from neutron import context as ctx
from neutron_lib import context as ctx
import unittest2
from neutron.common import rpc as n_rpc
@ -25,9 +25,11 @@ class TestContext(object):
def get_context_dict(self):
try:
context = ctx.Context('some_user', 'some_tenant')
context = ctx.Context(user_id='some_user',
tenant_id='some_tenant', is_advsvc=True)
except Exception:
context = ctx.Context('some_user', 'some_tenant')
context = ctx.Context(user_id='admin',
tenant_id='admin', is_advsvc=True, is_admin=True)
return context.to_dict()
"""Common class for pull notification tests"""

View File

@ -34,7 +34,6 @@ from aim import utils as aim_utils
from keystoneclient.v3 import client as ksc_client
from neutron.api import extensions
from neutron.callbacks import registry
from neutron import context as n_context
from neutron.db import api as db_api
from neutron.db import segments_db
from neutron.plugins.ml2 import config
@ -45,6 +44,7 @@ from neutron.tests.unit.extensions import test_l3
from neutron.tests.unit.extensions import test_securitygroup
from neutron.tests.unit import testlib_api
from neutron_lib import constants as n_constants
from neutron_lib import context as n_context
from neutron_lib.plugins import directory
from opflexagent import constants as ofcst
from oslo_config import cfg

View File

@ -16,8 +16,8 @@
import mock
import uuid
from neutron import context
from neutron.plugins.ml2 import config
from neutron_lib import context
from neutron_lib.plugins import directory
from gbpservice.neutron.tests.unit.plugins.ml2plus.drivers import (

View File

@ -14,7 +14,7 @@
# under the License.
import mock
from neutron import context
from neutron_lib import context
from gbpservice.neutron.services.apic_aim import l3_plugin
from gbpservice.neutron.tests.unit.services.grouppolicy import (

View File

@ -27,13 +27,13 @@ from netaddr import IPSet
from neutron.api.rpc.agentnotifiers import dhcp_rpc_agent_api
from neutron.callbacks import registry
from neutron.common import utils as n_utils
from neutron import context as nctx
from neutron.db import api as db_api
from neutron.extensions import dns
from neutron.notifiers import nova
from neutron.tests.unit.db import test_db_base_plugin_v2 as test_plugin
from neutron.tests.unit.extensions import test_address_scope
from neutron_lib import constants as n_constants
from neutron_lib import context as nctx
from neutron_lib.plugins import directory
from opflexagent import constants as ocst
from oslo_config import cfg

View File

@ -10,7 +10,7 @@
# License for the specific language governing permissions and limitations
# under the License.
from neutron import context as n_ctx
from neutron_lib import context as n_ctx
from oslo_config import cfg
from sqlalchemy.orm import exc as orm_exc

View File

@ -12,8 +12,8 @@
# limitations under the License.
import mock
from neutron import context
from neutron.tests.unit.plugins.ml2 import test_plugin
from neutron_lib import context
from oslo_config import cfg
from oslo_log import log as logging
import webob.exc

View File

@ -12,9 +12,9 @@
# limitations under the License.
import mock
from neutron import context as nctx
from neutron.plugins.common import constants as pconst
from neutron_lib import constants
from neutron_lib import context as nctx
from neutron_lib.plugins import directory
import webob.exc

View File

@ -12,8 +12,8 @@
#
import mock
from neutron import context
from neutron.tests.unit.db import test_db_base_plugin_v2
from neutron_lib import context
from neutronclient.common import exceptions
from neutronclient.v2_0 import client
from oslo_config import cfg

View File

@ -18,7 +18,6 @@ import six
from keystonemiddleware import auth_token # noqa
import mock
import netaddr
from neutron import context as nctx
from neutron.db.qos import models as qos_models
from neutron.extensions import external_net as external_net
from neutron.extensions import securitygroup as ext_sg
@ -28,6 +27,7 @@ from neutron.tests.unit.extensions import test_l3
from neutron.tests.unit.extensions import test_securitygroup
from neutron.tests.unit.plugins.ml2 import test_plugin as n_test_plugin
from neutron_lib import constants as cst
from neutron_lib import context as nctx
from neutron_lib.plugins import directory
from oslo_utils import uuidutils
import unittest2

View File

@ -15,7 +15,7 @@ import ast
import collections
from neutron.common import config
from neutron import context as n_ctx
from neutron_lib import context as n_ctx
from oslo_config import cfg
from oslo_serialization import jsonutils

View File

@ -16,9 +16,9 @@ import itertools
import copy
import heatclient
import mock
from neutron import context as neutron_context
from neutron.extensions import external_net as external_net
from neutron.plugins.common import constants
from neutron_lib import context as neutron_context
from oslo_serialization import jsonutils
from oslo_utils import uuidutils
import webob

View File

@ -14,9 +14,9 @@
import webob.exc
import mock
from neutron.common import config # noqa
from neutron import context as n_context
from neutron.common import config
from neutron.plugins.common import constants as pconst
from neutron_lib import context as n_context
from neutron_lib import exceptions as n_exc
from neutron_lib.plugins import directory
from oslo_config import cfg

View File

@ -12,8 +12,8 @@
import mock
from neutron.common import config # noqa
from neutron import context as n_context
from neutron.plugins.common import constants as pconst
from neutron_lib import context as n_context
from oslo_config import cfg
from gbpservice.neutron.services.servicechain.plugins.ncp import model

View File

@ -12,7 +12,7 @@
import mock
from neutron.common import config # noqa
from neutron import context as n_context
from neutron_lib import context as n_context
from neutron_lib.plugins import directory
from oslo_config import cfg

View File

@ -20,7 +20,7 @@ from oslo_service import service as oslo_service
from neutron.agent import rpc as n_agent_rpc
from neutron.common import rpc as n_rpc
from neutron import context as n_context
from neutron_lib import context as n_context
from gbpservice.nfp.core import log as nfp_logging

View File

@ -19,7 +19,7 @@ from gbpservice.nfp.core import log as nfp_logging
from gbpservice.nfp.lib import rest_client_over_unix as unix_rc
from neutron.common import rpc as n_rpc
from neutron import context as n_context
from neutron_lib import context as n_context
from oslo_config import cfg
from oslo_config import cfg as oslo_config

View File

@ -27,8 +27,8 @@ from gbpservice.nfp.orchestrator.db import nfp_db as nfp_db
from gbpservice.nfp.orchestrator.drivers import orchestration_driver
from gbpservice.nfp.orchestrator.openstack import openstack_driver
from neutron.common import rpc as n_rpc
from neutron import context as n_context
from neutron.db import api as db_api
from neutron_lib import context as n_context
import copy
import sys

View File

@ -11,8 +11,8 @@
# under the License.
from neutron.common import rpc as n_rpc
from neutron import context as n_context
from neutron.db import api as db_api
from neutron_lib import context as n_context
from oslo_log import helpers as log_helpers
import oslo_messaging

View File

@ -16,7 +16,7 @@ from gbpservice.nfp.core import module as nfp_api
from gbpservice.nfp.lib import transport as transport
from gbpservice.nfp.proxy_agent.lib import topics as a_topics
from neutron import context as n_context
from neutron_lib import context as n_context
import sys
import traceback

View File

@ -85,8 +85,8 @@ commands = python setup.py build_sphinx
# TODO(marun) H404 multi line docstring should start with a summary
# N530 direct neutron imports not allowed
# N531 Log messages require translation hints
# N537 Don't translate logs
ignore = E125,E126,E128,E129,E251,E265,E713,F402,F811,F812,H104,H237,H305,H307,H401,H402,H404,H405,N530,N531,N537
# N534 Untranslated exception message
ignore = E125,E126,E128,E129,E251,E265,E713,F402,F811,F812,H104,H237,H305,H307,H401,H402,H404,H405,N530,N531,N534
show-source = true
builtins = _