diff options
Diffstat (limited to 'heat')
-rw-r--r-- | heat/engine/resources/openstack/mistral/workflow.py | 6 | ||||
-rw-r--r-- | heat/tests/openstack/mistral/test_workflow.py | 13 |
2 files changed, 14 insertions, 5 deletions
diff --git a/heat/engine/resources/openstack/mistral/workflow.py b/heat/engine/resources/openstack/mistral/workflow.py index bdb1c3821..e5b290665 100644 --- a/heat/engine/resources/openstack/mistral/workflow.py +++ b/heat/engine/resources/openstack/mistral/workflow.py @@ -595,11 +595,7 @@ class Workflow(signal_responder.SignalResponder, self.data_set(self.EXECUTIONS, ','.join(executions)) def handle_update(self, json_snippet, tmpl_diff, prop_diff): - update_allowed = [self.INPUT, self.PARAMS, self.DESCRIPTION] - for prop in update_allowed: - if prop in prop_diff: - del prop_diff[prop] - if len(prop_diff) > 0: + if prop_diff: props = json_snippet.properties(self.properties_schema, self.context) new_props = self.prepare_properties(props) diff --git a/heat/tests/openstack/mistral/test_workflow.py b/heat/tests/openstack/mistral/test_workflow.py index 836791946..4582dfa46 100644 --- a/heat/tests/openstack/mistral/test_workflow.py +++ b/heat/tests/openstack/mistral/test_workflow.py @@ -535,6 +535,19 @@ class TestMistralWorkflow(common.HeatTestCase): self.assertTrue(self.mistral.workflows.update.called) self.assertEqual((wf.UPDATE, wf.COMPLETE), wf.state) + def test_update_input(self): + wf = self._create_resource('workflow', self.rsrc_defn, + self.stack) + t = template_format.parse(workflow_template) + t['resources']['workflow']['properties']['input'] = {'foo': 'bar'} + rsrc_defns = template.Template(t).resource_definitions(self.stack) + new_wf = rsrc_defns['workflow'] + self.mistral.workflows.update.return_value = [ + FakeWorkflow('test_stack-workflow-b5fiekfci3yc')] + scheduler.TaskRunner(wf.update, new_wf)() + self.assertTrue(self.mistral.workflows.update.called) + self.assertEqual((wf.UPDATE, wf.COMPLETE), wf.state) + def test_update_failed(self): wf = self._create_resource('workflow', self.rsrc_defn, self.stack) |