You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ariatosca.apache.org by mx...@apache.org on 2017/05/04 13:00:13 UTC
incubator-ariatosca git commit: review4 [Forced Update!]
Repository: incubator-ariatosca
Updated Branches:
refs/heads/ARIA-163-Update-node-state-for-stub-tasks 1602ddbed -> b7b9ab63b (forced update)
review4
Project: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/commit/b7b9ab63
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/tree/b7b9ab63
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/diff/b7b9ab63
Branch: refs/heads/ARIA-163-Update-node-state-for-stub-tasks
Commit: b7b9ab63b271adfcac77c58c221ba9fccf4fa608
Parents: dc55aa6
Author: max-orlov <ma...@gigaspaces.com>
Authored: Thu May 4 15:50:40 2017 +0300
Committer: max-orlov <ma...@gigaspaces.com>
Committed: Thu May 4 16:00:07 2017 +0300
----------------------------------------------------------------------
aria/orchestrator/workflows/api/task.py | 12 +++++++-----
aria/orchestrator/workflows/core/engine.py | 2 ++
aria/orchestrator/workflows/core/task.py | 4 ----
aria/orchestrator/workflows/events_logging.py | 11 ++++++++---
aria/orchestrator/workflows/executor/base.py | 4 ----
5 files changed, 17 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b7b9ab63/aria/orchestrator/workflows/api/task.py
----------------------------------------------------------------------
diff --git a/aria/orchestrator/workflows/api/task.py b/aria/orchestrator/workflows/api/task.py
index 43cbe57..cb79eb3 100644
--- a/aria/orchestrator/workflows/api/task.py
+++ b/aria/orchestrator/workflows/api/task.py
@@ -79,7 +79,8 @@ class OperationTask(BaseTask):
self.operation_name = operation_name
self.max_attempts = max_attempts or self.workflow_context._task_max_attempts
self.retry_interval = retry_interval or self.workflow_context._task_retry_interval
- self.ignore_failure = ignore_failure or self.workflow_context._task_ignore_failure
+ self.ignore_failure = \
+ self.workflow_context._task_ignore_failure if ignore_failure is None else ignore_failure
self.name = OperationTask.NAME_FORMAT.format(type=type(actor).__name__.lower(),
name=actor.name,
interface=self.interface_name,
@@ -143,13 +144,13 @@ class WorkflowTask(BaseTask):
def create_task(actor, interface_name, operation_name, **kwargs):
"""
- This helper function enables safe creation of OperationTask, if the supplied interface and
- operation have no implementation, None is returned.
+ This helper function enables safe creation of OperationTask, if the supplied interface or
+ operation do not exist, None is returned.
:param actor: the actor for this task
:param interface_name: the name of the interface
:param operation_name: the name of the operation
:param kwargs: any additional kwargs to be passed to the task OperationTask
- :return: and OperationTask or None (if no interface/operation exists)
+ :return: and OperationTask or None (if the interface/operation does not exists)
"""
try:
return OperationTask(
@@ -219,4 +220,5 @@ def create_relationship_tasks(relationship, interface_name, source_operation_nam
def has_operation(actor, interface_name, operation_name):
- return actor.interfaces.get(interface_name, {}).operations.get(operation_name, False)
+ interface = actor.interfaces.get(interface_name, None)
+ return interface and interface.operations.get(operation_name, False)
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b7b9ab63/aria/orchestrator/workflows/core/engine.py
----------------------------------------------------------------------
diff --git a/aria/orchestrator/workflows/core/engine.py b/aria/orchestrator/workflows/core/engine.py
index 6a66eb1..fd0dd6d 100644
--- a/aria/orchestrator/workflows/core/engine.py
+++ b/aria/orchestrator/workflows/core/engine.py
@@ -112,6 +112,8 @@ class Engine(logger.LoggerMixin):
@staticmethod
def _handle_executable_task(task):
+ if isinstance(task, engine_task.OperationTask):
+ events.sent_task_signal.send(task)
task.execute()
def _handle_ended_tasks(self, task):
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b7b9ab63/aria/orchestrator/workflows/core/task.py
----------------------------------------------------------------------
diff --git a/aria/orchestrator/workflows/core/task.py b/aria/orchestrator/workflows/core/task.py
index cc27d29..cee4bf4 100644
--- a/aria/orchestrator/workflows/core/task.py
+++ b/aria/orchestrator/workflows/core/task.py
@@ -77,9 +77,6 @@ class StubTask(BaseTask):
self.status = models.Task.PENDING
self.due_at = datetime.utcnow()
- def execute(self):
- return self._executor.execute(self)
-
def has_ended(self):
return self.status == self.SUCCESS
@@ -170,7 +167,6 @@ class OperationTask(BaseTask):
self._update_fields = None
def execute(self):
- self._executor._task_sent(self)
super(OperationTask, self).execute()
@contextmanager
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b7b9ab63/aria/orchestrator/workflows/events_logging.py
----------------------------------------------------------------------
diff --git a/aria/orchestrator/workflows/events_logging.py b/aria/orchestrator/workflows/events_logging.py
index e3f85d5..236a55f 100644
--- a/aria/orchestrator/workflows/events_logging.py
+++ b/aria/orchestrator/workflows/events_logging.py
@@ -36,10 +36,15 @@ def _get_task_name(task):
@events.start_task_signal.connect
def _start_task_handler(task, **kwargs):
# If the task has not implementation this is an empty task.
- suffix = 'started...' if task.implementation else 'has no implementation'
- task.context.logger.debug('{name} {task.interface_name}.{task.operation_name} {suffix}'
- .format(name=_get_task_name(task), task=task, suffix=suffix))
+ if task.implementation:
+ suffix = 'started...'
+ logger = task.context.logger.info
+ else:
+ suffix = 'has no implementation'
+ logger = task.context.logger.debug
+ logger('{name} {task.interface_name}.{task.operation_name} {suffix}'.format(
+ name=_get_task_name(task), task=task, suffix=suffix))
@events.on_success_task_signal.connect
def _success_task_handler(task, **kwargs):
http://git-wip-us.apache.org/repos/asf/incubator-ariatosca/blob/b7b9ab63/aria/orchestrator/workflows/executor/base.py
----------------------------------------------------------------------
diff --git a/aria/orchestrator/workflows/executor/base.py b/aria/orchestrator/workflows/executor/base.py
index 0194ee7..a225837 100644
--- a/aria/orchestrator/workflows/executor/base.py
+++ b/aria/orchestrator/workflows/executor/base.py
@@ -40,10 +40,6 @@ class BaseExecutor(logger.LoggerMixin):
pass
@staticmethod
- def _task_sent(task):
- events.sent_task_signal.send(task)
-
- @staticmethod
def _task_started(task):
events.start_task_signal.send(task)