diff --git a/tripleo_common/actions/package_update.py b/tripleo_common/actions/package_update.py index ed7b880f4..4aaa431b4 100644 --- a/tripleo_common/actions/package_update.py +++ b/tripleo_common/actions/package_update.py @@ -76,8 +76,12 @@ class UpdateStackAction(templates.ProcessTemplatesAction): noop_env['resource_registry'].update(role_env) update_env.update(noop_env) template_utils.deep_update(env, update_env) - plan_utils.update_in_env(swift, env, 'parameter_defaults', - self.container_registry['parameter_defaults']) + + # Update parameters + parameters = {} + if self.container_registry is not None: + parameters.update(self.container_registry['parameter_defaults']) + plan_utils.update_in_env(swift, env, 'parameter_defaults', parameters) # process all plan files and create or update a stack processed_data = super(UpdateStackAction, self).run(context) diff --git a/tripleo_common/tests/actions/test_package_update.py b/tripleo_common/tests/actions/test_package_update.py index 69f63f044..ec5677de8 100644 --- a/tripleo_common/tests/actions/test_package_update.py +++ b/tripleo_common/tests/actions/test_package_update.py @@ -99,11 +99,11 @@ class UpdateStackActionTest(base.TestCase): {'OS::TripleO::DeploymentSteps': 'OS::Heat::None'}} mock_getenv.return_value = env - fake_registry = {'parameter_defaults': [ + fake_registry = {'parameter_defaults': {'DockerKeystoneImage': '192.168.24.1:8787/' 'keystone-docker:latest', 'DockerHeatApiImage:': '192.168.24.1:8787/' - 'heat-api-docker:latest'}]} + 'heat-api-docker:latest'}} update_env.update(fake_registry) mock_swift.get_object.return_value = ({}, env) mock_object_client.return_value = mock_swift