Skip to content

Commit 309ca3a

Browse files
committed
Fix glance-api if cache is disabled
This patch fixes glance when cache is disabled. Change-Id: I3c3560ba9c87c7098d75173a095642bdd1d7c687
1 parent 519ce0b commit 309ca3a

File tree

2 files changed

+16
-7
lines changed

2 files changed

+16
-7
lines changed

glance/sqlite_migration.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,18 @@
3333

3434

3535
def can_migrate_to_central_db():
36+
# Return immediately if cache is disabled
37+
if not (CONF.paste_deploy.flavor and 'cache' in CONF.paste_deploy.flavor):
38+
return False
39+
40+
is_centralized_db_driver = CONF.image_cache_driver == "centralized_db"
3641
# Check worker_self_reference_url is set if cache is enabled and
3742
# cache driver is centralized_db
38-
is_centralized_db_driver = CONF.image_cache_driver == "centralized_db"
39-
if CONF.paste_deploy.flavor and 'cache' in CONF.paste_deploy.flavor:
40-
if is_centralized_db_driver and not CONF.worker_self_reference_url:
41-
msg = _("'worker_self_reference_url' needs to be set "
42-
"if `centralized_db` is defined as cache driver "
43-
"for image_cache_driver config option.")
44-
raise RuntimeError(msg)
43+
if is_centralized_db_driver and not CONF.worker_self_reference_url:
44+
msg = _("'worker_self_reference_url' needs to be set "
45+
"if `centralized_db` is defined as cache driver "
46+
"for image_cache_driver config option.")
47+
raise RuntimeError(msg)
4548

4649
return is_centralized_db_driver
4750

glance/tests/unit/test_sqlite_migration.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,10 +101,16 @@ def test_migrate_if_required_false(self):
101101
self.config(image_cache_driver="sqlite")
102102
self.assertFalse(sqlite_migration.migrate_if_required())
103103

104+
def test_migrate_if_required_cache_disabled(self):
105+
self.config(flavor="keystone", group="paste_deploy")
106+
self.config(image_cache_driver="centralized_db")
107+
self.assertFalse(sqlite_migration.migrate_if_required())
108+
104109
@mock.patch('os.path.exists')
105110
@mock.patch('os.path.join', new=mock.MagicMock())
106111
def test_migrate_if_required_db_not_found(self, mock_exists):
107112
mock_exists.return_value = False
113+
self.config(flavor="keystone+cache", group="paste_deploy")
108114
self.config(image_cache_driver="centralized_db")
109115
with mock.patch.object(sqlite_migration, 'LOG') as mock_log:
110116
sqlite_migration.migrate_if_required()

0 commit comments

Comments
 (0)