diff --git a/.pydevproject b/.pydevproject index 9ebe13fe..66f5d7bc 100644 --- a/.pydevproject +++ b/.pydevproject @@ -1,9 +1,14 @@ -python 2.7 -Default - -/keystone/hooks -/keystone/unit_tests - + + python 2.7 + + Default + + + /keystone/hooks + /keystone/unit_tests + /${PROJECT_DIR_NAME} + + diff --git a/hooks/keystone_context.py b/hooks/keystone_context.py index d145f966..87f737f0 100644 --- a/hooks/keystone_context.py +++ b/hooks/keystone_context.py @@ -18,10 +18,8 @@ import json from charmhelpers.contrib.openstack import context from charmhelpers.contrib.hahelpers.cluster import ( - DC_RESOURCE_NAME, determine_apache_port, determine_api_port, - is_elected_leader, https, ) @@ -30,6 +28,7 @@ from charmhelpers.core.hookenv import ( config, log, leader_get, + is_leader, local_unit, related_units, relation_ids, @@ -270,8 +269,7 @@ class TokenFlushContext(context.OSContextGenerator): def __call__(self): ctxt = { - 'token_flush': (not fernet_enabled() and - is_elected_leader(DC_RESOURCE_NAME)) + 'token_flush': (not fernet_enabled() and is_leader()) } return ctxt @@ -281,8 +279,7 @@ class FernetCronContext(context.OSContextGenerator): def __call__(self): token_expiration = int(config('token-expiration')) ctxt = { - 'enabled': (fernet_enabled() and - is_elected_leader(DC_RESOURCE_NAME)), + 'enabled': (fernet_enabled() and is_leader()), 'unit_name': local_unit(), 'charm_dir': charm_dir(), 'minute': ('*/5' if token_expiration > 300 else '*') @@ -299,7 +296,7 @@ def fernet_enabled(): cmp_release = CompareOpenStackReleases(os_release('keystone')) if cmp_release < 'ocata': return False - elif 'ocata' >= cmp_release < 'rocky': + elif cmp_release >= 'ocata' and cmp_release < 'rocky': return config('token-provider') == 'fernet' else: return True diff --git a/unit_tests/test_keystone_contexts.py b/unit_tests/test_keystone_contexts.py index 0b4fd16a..550330b4 100644 --- a/unit_tests/test_keystone_contexts.py +++ b/unit_tests/test_keystone_contexts.py @@ -164,17 +164,17 @@ class TestKeystoneContexts(CharmTestCase): 'log_file': '/var/log/keystone/keystone.log'}, ctxt()) - @patch.object(context, 'is_elected_leader') + @patch.object(context, 'is_leader') @patch.object(context, 'fernet_enabled') def test_token_flush_context( - self, mock_fernet_enabled, mock_is_elected_leader): + self, mock_fernet_enabled, mock_is_leader): ctxt = context.TokenFlushContext() mock_fernet_enabled.return_value = False - mock_is_elected_leader.return_value = False + mock_is_leader.return_value = False self.assertEqual({'token_flush': False}, ctxt()) - mock_is_elected_leader.return_value = True + mock_is_leader.return_value = True self.assertEqual({'token_flush': True}, ctxt()) mock_fernet_enabled.return_value = True @@ -182,10 +182,10 @@ class TestKeystoneContexts(CharmTestCase): @patch.object(context, 'charm_dir') @patch.object(context, 'local_unit') - @patch.object(context, 'is_elected_leader') + @patch.object(context, 'is_leader') @patch.object(context, 'fernet_enabled') def test_fernet_cron_context( - self, mock_fernet_enabled, mock_is_elected_leader, mock_local_unit, + self, mock_fernet_enabled, mock_is_leader, mock_local_unit, mock_charm_dir): ctxt = context.FernetCronContext() @@ -200,10 +200,10 @@ class TestKeystoneContexts(CharmTestCase): } mock_fernet_enabled.return_value = False - mock_is_elected_leader.return_value = False + mock_is_leader.return_value = False self.assertEqual(expected, ctxt()) - mock_is_elected_leader.return_value = True + mock_is_leader.return_value = True self.assertEqual(expected, ctxt()) mock_fernet_enabled.return_value = True