Merge "Fix overcloud node delete after an upgrade"

This commit is contained in:
Zuul 2018-02-19 08:15:46 +00:00 committed by Gerrit Code Review
commit 1550e16d6e
2 changed files with 11 additions and 8 deletions

View File

@ -83,6 +83,11 @@ class ScaleDownAction(templates.ProcessTemplatesAction):
fields = processed_data.copy() fields = processed_data.copy()
fields['timeout_mins'] = timeout_mins fields['timeout_mins'] = timeout_mins
fields['existing'] = True fields['existing'] = True
# As we do a PATCH update when deleting nodes, parameters set for a
# stack before upgrade to newton (ex. ComputeRemovalPolicies),
# would still take precedence over the ones set in parameter_defaults
# after upgrade. Clear these parameters for backward compatibility.
fields['clear_parameters'] = list(parameters.keys())
LOG.debug('stack update params: %s', fields) LOG.debug('stack update params: %s', fields)
self.get_orchestration_client(context).stacks.update(self.container, self.get_orchestration_client(context).stacks.update(self.container,

View File

@ -139,14 +139,12 @@ class ScaleDownActionTest(base.TestCase):
template={'heat_template_version': '2016-04-30'} template={'heat_template_version': '2016-04-30'}
) )
heatclient.stacks.update.assert_called_once_with( clear_list = list(['ComputeCount', 'ComputeRemovalPolicies'])
'stack', _, kwargs = heatclient.stacks.update.call_args
stack_name='stack', self.assertEqual(set(kwargs['clear_parameters']), set(clear_list))
template={'heat_template_version': '2016-04-30'}, self.assertEqual(kwargs['environment'], env)
environment=env, self.assertEqual(kwargs['existing'], True)
existing=True, self.assertEqual(kwargs['files'], {})
files={},
timeout_mins=240)
mock_cache.assert_called_with( mock_cache.assert_called_with(
mock_ctx, mock_ctx,