From 35fa0e1da1b96a40aa2aa6dd2be378e4155a22ba Mon Sep 17 00:00:00 2001 From: Mehdi Abaakouk Date: Tue, 12 Dec 2017 18:22:00 +0100 Subject: lazy loading of oslo_cache Now, we depend on oslo.cache [1], and use the private/internal memcache_pool code of the lib, making oslo.cache failing to import instead of just log an error about missing requirement for selected drivers at runtime. This change restores the previous behavior by lazy loading the module. [1] 9d8e2836fe7fca186e0380d8a532540ff5cc5215 Change-Id: I00e953abb3e835a94353fe458100c96e8e9c095a Closes-bug: #1737115 --- keystonemiddleware/auth_token/_cache.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keystonemiddleware/auth_token/_cache.py b/keystonemiddleware/auth_token/_cache.py index 2801077..4db934a 100644 --- a/keystonemiddleware/auth_token/_cache.py +++ b/keystonemiddleware/auth_token/_cache.py @@ -13,7 +13,6 @@ import contextlib import hashlib -from oslo_cache import _memcache_pool as memcache_pool from oslo_serialization import jsonutils from oslo_utils import timeutils import six @@ -90,8 +89,9 @@ class _MemcacheClientPool(object): """An advanced memcached client pool that is eventlet safe.""" def __init__(self, memcache_servers, **kwargs): - self._pool = memcache_pool.MemcacheClientPool(memcache_servers, - **kwargs) + from oslo_cache import _memcache_pool + self._pool = _memcache_pool.MemcacheClientPool(memcache_servers, + **kwargs) @contextlib.contextmanager def reserve(self): -- cgit v1.2.1