Merge "Replace openstack/context library by oslo_context"

This commit is contained in:
Zuul 2023-02-28 21:43:03 +00:00 committed by Gerrit Code Review
commit dccb65aacb
26 changed files with 52 additions and 133 deletions

View File

@ -11,10 +11,10 @@ import os
import subprocess import subprocess
import sys import sys
from controllerconfig.common import log from controllerconfig.common import log
from sysinv.openstack.common import context
from sysinv.conductor import rpcapiproxy as conductor_rpcapi from sysinv.conductor import rpcapiproxy as conductor_rpcapi
from cgtsclient import client as cgts_client from cgtsclient import client as cgts_client
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context
from sysinv.common import constants from sysinv.common import constants
CONF = cfg.CONF CONF = cfg.CONF

View File

@ -26,6 +26,7 @@ import time
from collections import defaultdict from collections import defaultdict
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context
from oslo_log import log from oslo_log import log
from sysinv._i18n import _ from sysinv._i18n import _
@ -36,7 +37,6 @@ from sysinv.common import utils
from sysinv.common import disk_utils from sysinv.common import disk_utils
from sysinv.conductor import rpcapiproxy as conductor_rpcapi from sysinv.conductor import rpcapiproxy as conductor_rpcapi
from sysinv.openstack.common import context
from functools import cmp_to_key from functools import cmp_to_key

View File

@ -17,13 +17,13 @@ import pyudev
import re import re
import sys import sys
from oslo_context import context
from oslo_log import log as logging from oslo_log import log as logging
from sysinv.common import disk_utils from sysinv.common import disk_utils
from sysinv.common import constants from sysinv.common import constants
from sysinv.common import utils from sysinv.common import utils
from sysinv.conductor import rpcapiproxy as conductor_rpcapi from sysinv.conductor import rpcapiproxy as conductor_rpcapi
from sysinv.openstack.common import context
LOG = logging.getLogger(__name__) LOG = logging.getLogger(__name__)

View File

@ -50,6 +50,7 @@ from six.moves import configparser
from six import StringIO from six import StringIO
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context as mycontext
from oslo_log import log from oslo_log import log
from oslo_service import periodic_task from oslo_service import periodic_task
from oslo_utils import timeutils from oslo_utils import timeutils
@ -69,7 +70,6 @@ from sysinv.common import utils
from sysinv.objects import base as objects_base from sysinv.objects import base as objects_base
from sysinv.puppet import common as puppet from sysinv.puppet import common as puppet
from sysinv.conductor import rpcapiproxy as conductor_rpcapi from sysinv.conductor import rpcapiproxy as conductor_rpcapi
from sysinv.openstack.common import context as mycontext
from sysinv.openstack.common.rpc.common import Timeout from sysinv.openstack.common.rpc.common import Timeout
from sysinv.openstack.common.rpc.common import serialize_remote_exception from sysinv.openstack.common.rpc.common import serialize_remote_exception
from sysinv.openstack.common.rpc import service as rpc_service from sysinv.openstack.common.rpc import service as rpc_service

View File

@ -19,7 +19,7 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
# #
# Copyright (c) 2013-2016 Wind River Systems, Inc. # Copyright (c) 2013-2023 Wind River Systems, Inc.
# #
@ -34,11 +34,11 @@ import os
import sys import sys
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context
from oslo_log import log from oslo_log import log
from sysinv._i18n import _ from sysinv._i18n import _
from sysinv.common import service as sysinv_service from sysinv.common import service as sysinv_service
from sysinv.conductor import rpcapiproxy as conductor_rpcapi from sysinv.conductor import rpcapiproxy as conductor_rpcapi
from sysinv.openstack.common import context
CONF = cfg.CONF CONF = cfg.CONF

View File

@ -1,6 +1,6 @@
#!/usr/bin/env python #!/usr/bin/env python
# #
# Copyright (c) 2020 Wind River Systems, Inc. # Copyright (c) 2023 Wind River Systems, Inc.
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -12,9 +12,9 @@ from sysinv.common import constants
from sysinv.common import service from sysinv.common import service
from sysinv.conductor import rpcapiproxy as conductor_rpcapi from sysinv.conductor import rpcapiproxy as conductor_rpcapi
from sysinv.db import api from sysinv.db import api
from sysinv.openstack.common import context
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context
from oslo_log import log as logging from oslo_log import log as logging

View File

@ -14,7 +14,7 @@
from sysinv.common.fm import get_fm_region from sysinv.common.fm import get_fm_region
from sysinv.db import api as dbapi from sysinv.db import api as dbapi
from sysinv.openstack.common import context from oslo_context import context
FAULT_MANAGEMENT = 'faultmanagement' FAULT_MANAGEMENT = 'faultmanagement'
REQUIRED_SERVICE_TYPES = (FAULT_MANAGEMENT,) REQUIRED_SERVICE_TYPES = (FAULT_MANAGEMENT,)
@ -26,7 +26,8 @@ class RequestContext(context.RequestContext):
def __init__(self, auth_token=None, domain_id=None, domain_name=None, def __init__(self, auth_token=None, domain_id=None, domain_name=None,
user=None, tenant=None, is_admin=False, is_public_api=False, user=None, tenant=None, is_admin=False, is_public_api=False,
project_name=None, read_only=False, show_deleted=False, project_name=None, read_only=False, show_deleted=False,
request_id=None, roles=None, service_catalog=None): request_id=None, roles=None, service_catalog=None,
system_scope=None, **kwargs):
"""Stores several additional request parameters: """Stores several additional request parameters:
:param domain_id: The ID of the domain. :param domain_id: The ID of the domain.
@ -38,10 +39,6 @@ class RequestContext(context.RequestContext):
:param service_catalog: Specifies the service_catalog :param service_catalog: Specifies the service_catalog
""" """
self.is_public_api = is_public_api self.is_public_api = is_public_api
self.domain_id = domain_id
self.domain_name = domain_name
self.project_name = project_name
self.roles = roles
self._session = None self._session = None
super(RequestContext, self).__init__(auth_token=auth_token, super(RequestContext, self).__init__(auth_token=auth_token,
@ -49,7 +46,12 @@ class RequestContext(context.RequestContext):
is_admin=is_admin, is_admin=is_admin,
read_only=read_only, read_only=read_only,
show_deleted=show_deleted, show_deleted=show_deleted,
request_id=request_id) request_id=request_id,
project_name=project_name,
roles=roles,
domain_id=domain_id,
domain_name=domain_name,
system_scope=system_scope)
if service_catalog: if service_catalog:
# Only include required parts of service_catalog # Only include required parts of service_catalog
self.service_catalog = [s for s in service_catalog self.service_catalog = [s for s in service_catalog

View File

@ -21,10 +21,10 @@ import abc
import socket import socket
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context
from oslo_log import log as logging from oslo_log import log as logging
from oslo_service import periodic_task from oslo_service import periodic_task
from oslo_service import service as base_service from oslo_service import service as base_service
from sysinv.openstack.common import context
from sysinv.openstack.common import rpc from sysinv.openstack.common import rpc
from sysinv import version from sysinv import version

View File

@ -69,6 +69,7 @@ from fm_api import fm_api
from netaddr import IPAddress from netaddr import IPAddress
from netaddr import IPNetwork from netaddr import IPNetwork
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context as ctx
from oslo_log import log from oslo_log import log
from oslo_serialization import base64 from oslo_serialization import base64
from oslo_serialization import jsonutils from oslo_serialization import jsonutils
@ -114,7 +115,6 @@ from sysinv.db import api as dbapi
from sysinv import objects from sysinv import objects
from sysinv.objects import base as objects_base from sysinv.objects import base as objects_base
from sysinv.objects import kube_app as kubeapp_obj from sysinv.objects import kube_app as kubeapp_obj
from sysinv.openstack.common import context as ctx
from sysinv.openstack.common.rpc import service as rpc_service from sysinv.openstack.common.rpc import service as rpc_service
from sysinv.puppet import common as puppet_common from sysinv.puppet import common as puppet_common
from sysinv.puppet import puppet from sysinv.puppet import puppet
@ -402,7 +402,7 @@ class ConductorManager(service.PeriodicService):
""" Get call back endpoints for keystone listener""" """ Get call back endpoints for keystone listener"""
callback_endpoints = [] callback_endpoints = []
context = ctx.RequestContext(user='admin', tenant='admin', context = ctx.RequestContext(user_id='admin', project_id='admin',
is_admin=True) is_admin=True)
for username in KEYSTONE_USER_PASSWORD_UPDATE.keys(): for username in KEYSTONE_USER_PASSWORD_UPDATE.keys():
if username == 'admin': if username == 'admin':

View File

@ -1,6 +1,6 @@
# sim: tabstop=4 shiftwidth=4 softtabstop=4 # sim: tabstop=4 shiftwidth=4 softtabstop=4
# #
# Copyright (c) 2019-2022 Wind River Systems, Inc. # Copyright (c) 2019-2023 Wind River Systems, Inc.
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -19,12 +19,12 @@ import threading
import zlib import zlib
from eventlet.green import subprocess from eventlet.green import subprocess
from oslo_context import context
from oslo_log import log as logging from oslo_log import log as logging
from sysinv.agent import rpcapiproxy as agent_rpcapi from sysinv.agent import rpcapiproxy as agent_rpcapi
from sysinv.common import exception from sysinv.common import exception
from sysinv.common import kubernetes from sysinv.common import kubernetes
from sysinv.common.retrying import retry from sysinv.common.retrying import retry
from sysinv.openstack.common import context
LOG = logging.getLogger(__name__) LOG = logging.getLogger(__name__)

View File

@ -12,7 +12,7 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
# #
# Copyright (c) 2013-2016 Wind River Systems, Inc. # Copyright (c) 2013-2023 Wind River Systems, Inc.
# #
@ -22,11 +22,11 @@ import collections
import copy import copy
import six import six
from oslo_context import context
from oslo_log import log as logging from oslo_log import log as logging
from sysinv._i18n import _ from sysinv._i18n import _
from sysinv.common import exception from sysinv.common import exception
from sysinv.objects import utils as obj_utils from sysinv.objects import utils as obj_utils
from sysinv.openstack.common import context
from sysinv.openstack.common.rpc import common as rpc_common from sysinv.openstack.common.rpc import common as rpc_common
from sysinv.openstack.common.rpc import serializer as rpc_serializer from sysinv.openstack.common.rpc import serializer as rpc_serializer

View File

@ -1,86 +0,0 @@
# vim: tabstop=4 shiftwidth=4 softtabstop=4
# Copyright 2011 OpenStack Foundation.
# 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.
"""
Simple class that stores security context information in the web request.
Projects should subclass this class if they wish to enhance the request
context or provide additional information in their specific WSGI pipeline.
"""
import itertools
from oslo_utils import uuidutils
def generate_request_id():
return 'req-%s' % uuidutils.generate_uuid()
class RequestContext(object):
"""
Stores information about the security context under which the user
accesses the system, as well as additional request information.
"""
def __init__(self, auth_token=None, user=None, tenant=None, is_admin=False,
read_only=False, show_deleted=False, request_id=None):
self.auth_token = auth_token
self.user = user
self.tenant = tenant
self.is_admin = is_admin
self.read_only = read_only
self.show_deleted = show_deleted
if not request_id:
request_id = generate_request_id()
self.request_id = request_id
def to_dict(self):
return {'user': self.user,
'tenant': self.tenant,
'is_admin': self.is_admin,
'read_only': self.read_only,
'show_deleted': self.show_deleted,
'auth_token': self.auth_token,
'request_id': self.request_id}
@classmethod
def from_dict(cls, values):
return cls(**values)
def get_admin_context(show_deleted=False):
context = RequestContext(None,
tenant=None,
is_admin=True,
show_deleted=show_deleted)
return context
def get_context_from_function_and_args(function, args, kwargs):
"""Find an arg of type RequestContext and return it.
This is useful in a couple of decorators where we don't
know much about the function we're wrapping.
"""
for arg in itertools.chain(kwargs.values(), args):
if isinstance(arg, RequestContext):
return arg
return None

View File

@ -17,12 +17,12 @@ import uuid
import six import six
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context
from oslo_log import log as logging from oslo_log import log as logging
from oslo_serialization import jsonutils from oslo_serialization import jsonutils
from oslo_utils import importutils from oslo_utils import importutils
from oslo_utils import timeutils from oslo_utils import timeutils
from sysinv._i18n import _ from sysinv._i18n import _
from sysinv.openstack.common import context
LOG = logging.getLogger(__name__) LOG = logging.getLogger(__name__)

View File

@ -14,9 +14,9 @@
# under the License. # under the License.
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context as req_context
from oslo_log import log as logging from oslo_log import log as logging
from sysinv._i18n import _ from sysinv._i18n import _
from sysinv.openstack.common import context as req_context
from sysinv.openstack.common import rpc from sysinv.openstack.common import rpc
LOG = logging.getLogger(__name__) LOG = logging.getLogger(__name__)

View File

@ -16,9 +16,9 @@
'''messaging based notification driver, with message envelopes''' '''messaging based notification driver, with message envelopes'''
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context as req_context
from oslo_log import log as logging from oslo_log import log as logging
from sysinv._i18n import _ from sysinv._i18n import _
from sysinv.openstack.common import context as req_context
from sysinv.openstack.common import rpc from sysinv.openstack.common import rpc
LOG = logging.getLogger(__name__) LOG = logging.getLogger(__name__)

View File

@ -1,5 +1,5 @@
# #
# Copyright (c) 2021 Wind River Systems, Inc. # Copyright (c) 2023 Wind River Systems, Inc.
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -11,10 +11,10 @@ Tests for the sysinv agent manager.
import mock import mock
from tsconfig import tsconfig from tsconfig import tsconfig
from oslo_context import context
from sysinv.agent.manager import AgentManager from sysinv.agent.manager import AgentManager
from sysinv.common import constants from sysinv.common import constants
from sysinv.openstack.common import context
from sysinv.tests import base from sysinv.tests import base

View File

@ -2,7 +2,7 @@
# -*- encoding: utf-8 -*- # -*- encoding: utf-8 -*-
# #
# #
# Copyright (c) 2017-2021 Wind River Systems, Inc. # Copyright (c) 2017-2023 Wind River Systems, Inc.
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -28,6 +28,7 @@ except ImportError:
""" """
with ExitStack() as stack: with ExitStack() as stack:
yield tuple(stack.enter_context(cm) for cm in contexts) yield tuple(stack.enter_context(cm) for cm in contexts)
from oslo_context import context
from oslo_serialization import jsonutils from oslo_serialization import jsonutils
from oslo_utils import uuidutils from oslo_utils import uuidutils
from sysinv.conductor import manager from sysinv.conductor import manager
@ -36,7 +37,6 @@ from sysinv.common import constants
from sysinv.common import utils as cutils from sysinv.common import utils as cutils
from sysinv.common.storage_backend_conf import StorageBackendConfig from sysinv.common.storage_backend_conf import StorageBackendConfig
from sysinv.db import api as dbapi from sysinv.db import api as dbapi
from sysinv.openstack.common import context
from sysinv.tests.api import base from sysinv.tests.api import base
from sysinv.tests.db import utils as dbutils from sysinv.tests.db import utils as dbutils

View File

@ -1,5 +1,5 @@
# #
# Copyright (c) 2019 Wind River Systems, Inc. # Copyright (c) 2023 Wind River Systems, Inc.
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -13,9 +13,10 @@ import kubernetes
import mock import mock
import uuid import uuid
from oslo_context import context
from sysinv.common import constants from sysinv.common import constants
from sysinv.common import health from sysinv.common import health
from sysinv.openstack.common import context
from sysinv.tests.db import base as dbbase from sysinv.tests.db import base as dbbase
from sysinv.tests.db import utils as dbutils from sysinv.tests.db import utils as dbutils

View File

@ -1,7 +1,7 @@
# vim: tabstop=4 shiftwidth=4 softtabstop=4 # vim: tabstop=4 shiftwidth=4 softtabstop=4
# coding=utf-8 # coding=utf-8
# Copyright (c) 2017-2019 Wind River Systems, Inc. # Copyright (c) 2017-2023 Wind River Systems, Inc.
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -11,6 +11,7 @@
import mock import mock
from cephclient import wrapper as ceph from cephclient import wrapper as ceph
from oslo_context import context
from oslo_utils import uuidutils from oslo_utils import uuidutils
from sysinv.common import ceph as cceph from sysinv.common import ceph as cceph
@ -18,7 +19,6 @@ from sysinv.common import constants
from sysinv.conductor import manager from sysinv.conductor import manager
from sysinv.conductor import ceph as iceph from sysinv.conductor import ceph as iceph
from sysinv.db import api as dbapi from sysinv.db import api as dbapi
from sysinv.openstack.common import context
from sysinv.tests.db import base from sysinv.tests.db import base
from sysinv.tests.db import utils from sysinv.tests.db import utils

View File

@ -8,12 +8,13 @@
import fixtures import fixtures
from oslo_context import context
from sysinv.common import constants from sysinv.common import constants
from sysinv.conductor import kube_app from sysinv.conductor import kube_app
from sysinv.conductor import manager from sysinv.conductor import manager
from sysinv.db import api as dbapi from sysinv.db import api as dbapi
from sysinv.helm import helm from sysinv.helm import helm
from sysinv.openstack.common import context
from sysinv.objects import kube_app as obj_app from sysinv.objects import kube_app as obj_app
from sysinv.tests.db import base from sysinv.tests.db import base

View File

@ -17,7 +17,7 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
# #
# Copyright (c) 2013-2022 Wind River Systems, Inc. # Copyright (c) 2013-2023 Wind River Systems, Inc.
# #
"""Test class for Sysinv ManagerService.""" """Test class for Sysinv ManagerService."""
@ -31,6 +31,7 @@ from cryptography import x509
from cryptography.hazmat.backends import default_backend from cryptography.hazmat.backends import default_backend
from fm_api import constants as fm_constants from fm_api import constants as fm_constants
from oslo_context import context
from oslo_serialization import base64 from oslo_serialization import base64
from sysinv.agent import rpcapi as agent_rpcapi from sysinv.agent import rpcapi as agent_rpcapi
from sysinv.common import constants from sysinv.common import constants
@ -40,7 +41,6 @@ from sysinv.common import kubernetes
from sysinv.common import utils as cutils from sysinv.common import utils as cutils
from sysinv.conductor import manager from sysinv.conductor import manager
from sysinv.db import api as dbapi from sysinv.db import api as dbapi
from sysinv.openstack.common import context
from sysinv.tests.db import base from sysinv.tests.db import base
from sysinv.tests.db import utils from sysinv.tests.db import utils
@ -4191,7 +4191,7 @@ class ManagerTestCase(base.DbTestCase):
} }
mock_config_apply_runtime_manifest.assert_called_with(mock.ANY, '1234', config_dict) mock_config_apply_runtime_manifest.assert_called_with(mock.ANY, '1234', config_dict)
@mock.patch("sysinv.openstack.common.context.RequestContext") @mock.patch("oslo_context.context.RequestContext")
def test_get_keystone_callback_endpoints(self, requestCtx): def test_get_keystone_callback_endpoints(self, requestCtx):
mock_config_update_hosts = mock.MagicMock() mock_config_update_hosts = mock.MagicMock()
mock_config_apply_runtime_manifest = mock.MagicMock() mock_config_apply_runtime_manifest = mock.MagicMock()

View File

@ -1,5 +1,5 @@
# #
# Copyright (c) 2021 Wind River Systems, Inc. # Copyright (c) 2023 Wind River Systems, Inc.
# #
# SPDX-License-Identilfier: Apache-2.0 # SPDX-License-Identilfier: Apache-2.0
# #
@ -8,10 +8,11 @@
Tests for the restore logic Tests for the restore logic
""" """
from oslo_context import context
from sysinv.common import constants from sysinv.common import constants
from sysinv.conductor import manager from sysinv.conductor import manager
from sysinv.db import api as dbapi from sysinv.db import api as dbapi
from sysinv.openstack.common import context
from sysinv.tests.db import base from sysinv.tests.db import base

View File

@ -16,7 +16,7 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
# #
# Copyright (c) 2013-2016 Wind River Systems, Inc. # Copyright (c) 2013-2023 Wind River Systems, Inc.
# #
""" """
@ -25,11 +25,11 @@ Unit Tests for :py:class:`sysinv.conductor.rpcapi.ConductorAPI`.
import mock import mock
from oslo_config import cfg from oslo_config import cfg
from oslo_context import context
from oslo_serialization import jsonutils as json from oslo_serialization import jsonutils as json
from sysinv.conductor import rpcapi as conductor_rpcapi from sysinv.conductor import rpcapi as conductor_rpcapi
from sysinv.db import api as dbapi from sysinv.db import api as dbapi
from sysinv.openstack.common import context
from sysinv.openstack.common import rpc from sysinv.openstack.common import rpc
from sysinv.tests.db import base from sysinv.tests.db import base
from sysinv.tests.db import utils as dbutils from sysinv.tests.db import utils as dbutils

View File

@ -15,7 +15,7 @@
# License for the specific language governing permissions and limitations # License for the specific language governing permissions and limitations
# under the License. # under the License.
# #
# Copyright (c) 2013-2022 Wind River Systems, Inc. # Copyright (c) 2013-2023 Wind River Systems, Inc.
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
# #
@ -29,11 +29,11 @@ import os
import netaddr import netaddr
import six import six
from oslo_context import context
from oslo_utils import uuidutils from oslo_utils import uuidutils
from sysinv.common import constants from sysinv.common import constants
from sysinv.common import utils from sysinv.common import utils
from sysinv.openstack.common import context
from sysinv.tests import base from sysinv.tests import base
from sysinv.tests.db import utils as dbutils from sysinv.tests.db import utils as dbutils

View File

@ -21,11 +21,11 @@ import six
gettext.install('sysinv') gettext.install('sysinv')
from oslo_context import context
from oslo_utils import timeutils from oslo_utils import timeutils
from sysinv.common import exception from sysinv.common import exception
from sysinv.objects import base from sysinv.objects import base
from sysinv.objects import utils from sysinv.objects import utils
from sysinv.openstack.common import context
from sysinv.tests import base as test_base from sysinv.tests import base as test_base
@ -335,7 +335,7 @@ class _TestObjectMixin(object):
def test_with_alternate_context(self): def test_with_alternate_context(self):
ctxt1 = context.RequestContext('foo', 'foo') ctxt1 = context.RequestContext('foo', 'foo')
ctxt2 = context.RequestContext('bar', tenant='alternate') ctxt2 = context.RequestContext('bar', project_id='alternate')
obj = MyObj.get(ctxt1) obj = MyObj.get(ctxt1)
obj.update_test(ctxt2) obj.update_test(ctxt2)
self.assertEqual(obj.bar, 'alternate-context') self.assertEqual(obj.bar, 'alternate-context')

View File

@ -1,4 +1,4 @@
# Copyright (c) 2022 Wind River Systems, Inc. # Copyright (c) 2023 Wind River Systems, Inc.
# #
# SPDX-License-Identifier: Apache-2.0 # SPDX-License-Identifier: Apache-2.0
@ -8,9 +8,9 @@ import netaddr
import uuid import uuid
from oslo_utils import timeutils from oslo_utils import timeutils
from oslo_context.context import RequestContext as BaseRequestContext
from sysinv.objects.base import SysinvObject from sysinv.objects.base import SysinvObject
from sysinv.common.context import RequestContext from sysinv.common.context import RequestContext
from sysinv.openstack.common.context import RequestContext as BaseRequestContext
from sysinv.openstack.common.rpc.amqp import RpcContext from sysinv.openstack.common.rpc.amqp import RpcContext
from sysinv.openstack.common.rpc.common import CommonRpcContext from sysinv.openstack.common.rpc.common import CommonRpcContext