final fixes
Project: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/commit/38d45672 Tree: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/tree/38d45672 Diff: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/diff/38d45672 Branch: refs/heads/ARIA-163-Update-node-state-for-stub-tasks Commit: 38d4567239dac6acb70d1579a207a26e41d21799 Parents: b392714 Author: max-orlov <ma...@gigaspaces.com> Authored: Thu May 4 16:37:15 2017 +0300 Committer: max-orlov <ma...@gigaspaces.com> Committed: Thu May 4 17:07:40 2017 +0300 ---------------------------------------------------------------------- aria/orchestrator/workflows/core/task.py | 9 +++------ aria/orchestrator/workflows/core/translation.py | 10 ++++++---- tests/orchestrator/workflows/core/test_task.py | 7 +++++-- 3 files changed, 14 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/38d45672/aria/orchestrator/workflows/core/task.py ---------------------------------------------------------------------- diff --git a/aria/orchestrator/workflows/core/task.py b/aria/orchestrator/workflows/core/task.py index a39bbca..0e081c2 100644 --- a/aria/orchestrator/workflows/core/task.py +++ b/aria/orchestrator/workflows/core/task.py @@ -27,7 +27,6 @@ from functools import ( from ....modeling import models from ...context import operation as operation_context -from ..executor import base from .. import exceptions @@ -73,7 +72,7 @@ class StubTask(BaseTask): SUCCESS = models.Task.SUCCESS def __init__(self, *args, **kwargs): - super(StubTask, self).__init__(executor=base.StubTaskExecutor(), *args, **kwargs) + super(StubTask, self).__init__(*args, **kwargs) self.status = models.Task.PENDING self.due_at = datetime.utcnow() @@ -116,12 +115,10 @@ class OperationTask(BaseTask): """ Operation task """ - def __init__(self, api_task, executor=None, *args, **kwargs): + def __init__(self, api_task, *args, **kwargs): # If no executor is provided, we infer that this is an empty task which does not need to be # executed. - super(OperationTask, self).__init__( - id=api_task.id, executor=executor or base.EmptyOperationExecutor(), *args, **kwargs) - + super(OperationTask, self).__init__(id=api_task.id, *args, **kwargs) self._workflow_context = api_task._workflow_context self.interface_name = api_task.interface_name self.operation_name = api_task.operation_name http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/38d45672/aria/orchestrator/workflows/core/translation.py ---------------------------------------------------------------------- diff --git a/aria/orchestrator/workflows/core/translation.py b/aria/orchestrator/workflows/core/translation.py index b31ea8a..0bbce90 100644 --- a/aria/orchestrator/workflows/core/translation.py +++ b/aria/orchestrator/workflows/core/translation.py @@ -18,6 +18,7 @@ Translation of user graph's API to the execution graph """ from .. import api +from ..executor import base from . import task as core_task @@ -38,7 +39,7 @@ def build_execution_graph( :param depends_on: internal use """ # Insert start marker - start_task = start_cls(id=_start_graph_suffix(task_graph.id)) + start_task = start_cls(id=_start_graph_suffix(task_graph.id), executor=base.StubTaskExecutor()) _add_task_and_dependencies(execution_graph, start_task, depends_on) for api_task in task_graph.topological_order(reverse=True): @@ -50,7 +51,8 @@ def build_execution_graph( if api_task.implementation: operation_task = core_task.OperationTask(api_task, executor=default_executor) else: - operation_task = core_task.OperationTask(api_task) + operation_task = core_task.OperationTask(api_task, + executor=base.EmptyOperationExecutor()) _add_task_and_dependencies(execution_graph, operation_task, operation_dependencies) elif isinstance(api_task, api.task.WorkflowTask): # Build the graph recursively while adding start and end markers @@ -63,7 +65,7 @@ def build_execution_graph( depends_on=operation_dependencies ) elif isinstance(api_task, api.task.StubTask): - stub_task = core_task.StubTask(id=api_task.id) + stub_task = core_task.StubTask(id=api_task.id, executor=base.StubTaskExecutor()) _add_task_and_dependencies(execution_graph, stub_task, operation_dependencies) else: raise RuntimeError('Undefined state') @@ -73,7 +75,7 @@ def build_execution_graph( execution_graph, _get_non_dependency_tasks(task_graph), default=[start_task]) - end_task = end_cls(id=_end_graph_suffix(task_graph.id)) + end_task = end_cls(id=_end_graph_suffix(task_graph.id), executor=base.StubTaskExecutor()) _add_task_and_dependencies(execution_graph, end_task, workflow_dependencies) http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/38d45672/tests/orchestrator/workflows/core/test_task.py ---------------------------------------------------------------------- diff --git a/tests/orchestrator/workflows/core/test_task.py b/tests/orchestrator/workflows/core/test_task.py index e21ec8d..04f49d6 100644 --- a/tests/orchestrator/workflows/core/test_task.py +++ b/tests/orchestrator/workflows/core/test_task.py @@ -24,6 +24,7 @@ from aria.orchestrator.workflows import ( api, core, exceptions, + executor ) from tests import mock, storage @@ -70,7 +71,8 @@ class TestOperationTask(object): node, interface_name=NODE_INTERFACE_NAME, operation_name=NODE_OPERATION_NAME) - core_task = core.task.OperationTask(api_task=api_task) + core_task = core.task.OperationTask(api_task=api_task, + executor=executor.base.EmptyOperationExecutor) return api_task, core_task def _create_relationship_operation_task(self, ctx, relationship): @@ -79,7 +81,8 @@ class TestOperationTask(object): relationship, interface_name=RELATIONSHIP_INTERFACE_NAME, operation_name=RELATIONSHIP_OPERATION_NAME) - core_task = core.task.OperationTask(api_task=api_task) + core_task = core.task.OperationTask(api_task=api_task, + executor=executor.base.EmptyOperationExecutor) return api_task, core_task def test_node_operation_task_creation(self, ctx):