Add more test and fix config_changed
This commit is contained in:
parent
48df3e3c90
commit
c811d3f9bb
|
@ -46,6 +46,7 @@ from charmhelpers.contrib.openstack.openstack_utils import (
|
|||
get_os_codename_package,
|
||||
get_os_codename_install_source,
|
||||
get_os_version_codename,
|
||||
openstack_upgrade_available,
|
||||
save_script_rc,
|
||||
lsb_release, )
|
||||
|
||||
|
@ -225,25 +226,16 @@ def keystone_changed():
|
|||
@hooks.hook('config-changed')
|
||||
@restart_on_change(restart_map())
|
||||
def config_changed():
|
||||
# Determine whether or not we should do an upgrade, based on whether or not
|
||||
# the version offered in openstack-origin is greater than what is installed
|
||||
install_src = config("openstack-origin")
|
||||
available = get_os_codename_install_source(install_src)
|
||||
installed = get_os_codename_package("glance-common")
|
||||
|
||||
if (available and
|
||||
get_os_version_codename(available) >
|
||||
get_os_version_codename(installed)):
|
||||
juju_log('%s: Upgrading OpenStack release: %s -> %s' %
|
||||
(CHARM, installed, available))
|
||||
if openstack_upgrade_available('glance-common'):
|
||||
juju_log('Upgrading OpenStack release')
|
||||
do_openstack_upgrade(CONFIGS)
|
||||
|
||||
configure_https()
|
||||
|
||||
env_vars = {'OPENSTACK_PORT_MCASTPORT': config("ha-mcastport"),
|
||||
'OPENSTACK_SERVICE_API': "glance-api",
|
||||
'OPENSTACK_SERVICE_REGISTRY': "glance-registry"}
|
||||
save_script_rc(**env_vars)
|
||||
#env_vars = {'OPENSTACK_PORT_MCASTPORT': config("ha-mcastport"),
|
||||
# 'OPENSTACK_SERVICE_API': "glance-api",
|
||||
# 'OPENSTACK_SERVICE_REGISTRY': "glance-registry"}
|
||||
#save_script_rc(**env_vars)
|
||||
|
||||
|
||||
@hooks.hook('cluster-relation-changed')
|
||||
|
|
|
@ -34,7 +34,7 @@ TO_PATCH = [
|
|||
'configure_installation_source',
|
||||
'get_os_codename_install_source',
|
||||
'get_os_codename_package',
|
||||
'get_os_version_codename',
|
||||
'openstack_upgrade_available',
|
||||
# charmhelpers.contrib.hahelpers.cluster_utils
|
||||
'eligible_leader',
|
||||
'is_clustered',
|
||||
|
@ -363,15 +363,21 @@ class GlanceRelationTests(CharmTestCase):
|
|||
object_store_joined.assert_called_with()
|
||||
self.assertTrue(configure_https.called)
|
||||
|
||||
def test_config_changed(self):
|
||||
self.test_config.set('openstack-origin', 'cloud:precise-grizzly')
|
||||
self.get_os_codename_install_source.return_value = '10.0'
|
||||
self.get_os_codename_package.return_value = '9.0'
|
||||
@patch.object(relations, 'configure_https')
|
||||
def test_config_changed_no_openstack_upgrade(self, configure_https):
|
||||
self.openstack_upgrade_available.return_value = False
|
||||
relations.config_changed()
|
||||
#self.juju_log.assert_called_with(
|
||||
# 'glance: Upgrading OpenStack release: 9.0 -> 10.0'
|
||||
#)
|
||||
self.assertTrue(configure_https.called)
|
||||
|
||||
@patch.object(relations, 'configure_https')
|
||||
def test_config_changed_with_openstack_upgrade(self, configure_https):
|
||||
self.openstack_upgrade_available.return_value = True
|
||||
relations.config_changed()
|
||||
self.juju_log.assert_called_with(
|
||||
'Upgrading OpenStack release'
|
||||
)
|
||||
self.assertTrue(self.do_openstack_upgrade.called)
|
||||
self.assertTrue(configure_https.called)
|
||||
|
||||
@patch.object(relations, 'CONFIGS')
|
||||
def test_cluster_changed(self, configs):
|
||||
|
|
Loading…
Reference in New Issue