Workflow Service for OpenStack.
Go to file
Renat Akhmerov ae2c5fdbbb Add a workflow execution report endpoint
* This patch adds the first version of the REST endpoint that
  can generate a report for a workflow execution. Without any
  query parameters, GET method of the endpoint returns a tree-like
  structure that includes information about all execution objects
  associated with the specified workflow execution. The root object
  is the workflow execution itself, its children are task executions,
  each task execution has either action executions or workflow
  executions and so on. So the structure describes the entire set
  of execution objects regardless of how deep there are from the
  root object. This kind of data itself can be used to better
  understand and visualise the process related with a parent workflow,
  see what paths were taken while the workflow was running.
  If additional parameters are provided in a query string, the
  endpoint can give only a subset of the entire tree. Currently,
  the filters are:
    1. "errors_only" (boolean) to retain only all execution objects
        with the error state, meaning that only all error paths are
        present in the report. It is useful when we need to do a root
        cause analysis of the workflow failure. False by default.
    2. "max_depth" (integer) to limit how deep the algorithm can go
        into nested workflows. If set to 0, only the root workflow
        execution will be in the report. If set to 1, then the report
        will have only the root workflow execution and its direct
	children. And so on. If negative (by default) then no limit
        is set.
  Additionally, the report contains statistics about task executions
  examined while the report was being generated, like the number of
  tasks in the error state, number of tasks that successfully
  finished and so on.
* Added all main tests for the endpoint. Note that despite the fact
  that this test verifies a REST API endpoint, unlike the other API
  tests it runs a Mistral engine to run workflows. This is done to
  simplify the test implementation so that we don't have to mock
  everything with huge data structures like we do in other API tests.

Possible changes that may be made based on the feedback:
* Statistics can contain not only number of tasks in certain states.
  We can also add things like number of actions, depth of the tree,
  number of nested workflows, average task/action/workflow execution
  time etc.
* Additional query parameters to configure a generated report. For
  example, "statistics_only" just to get a general information about
  the workflow execution tree, not the tree itself. Another example
  is "running_only" to retain only not finished workflow paths.

Implements blueprint: mistral-error-analysis

Change-Id: Id3e17821e04b7a1b84dfea5126d223d90ad8e3c2
2019-02-11 15:03:35 +07:00
api-ref/source Remove the invalid toctree 2018-01-31 04:16:42 +00:00
devstack Install mistral-lib as a sibling for tox jobs 2018-07-19 12:56:52 -04:00
doc Merge "Omit the twice occured words in index.rst" 2019-01-09 04:52:21 +00:00
etc Implement policy in code - event trigger (11) 2017-11-27 02:47:50 +00:00
functionaltests Remove intree mistral tempest plugin 2017-12-26 07:49:14 +00:00
mistral Add a workflow execution report endpoint 2019-02-11 15:03:35 +07:00
playbooks Merge "Fix docker image build job" 2018-04-25 10:09:05 +00:00
rally-jobs Reduce the concurrency in the 500 wb join Rally task 2018-10-17 09:36:29 +01:00
releasenotes Fix the misspelling of "default" 2019-01-10 17:22:36 +08:00
tools Fix docker image not building 2018-08-01 05:08:48 +00:00
.coveragerc Exclude .tox folder from coverage report 2016-12-19 03:33:29 +00:00
.dockerignore Update default Docker configuration and documentation 2018-06-10 19:21:18 -05:00
.gitignore Update default Docker configuration and documentation 2018-06-10 19:21:18 -05:00
.gitreview Update .gitreview file for project rename 2015-06-12 23:12:30 +00:00
.stestr.conf Switch to using stestr 2018-05-30 14:46:25 -04:00
.zuul.yaml Replace tripleo-scenario003-multinode with scenario003-standalone 2019-01-10 10:34:28 +00:00
CONTRIBUTING.rst Update mailinglist from dev to discuss 2019-01-04 14:59:24 +00:00
HACKING.rst Fix the pep8 commands failed 2017-07-27 22:15:12 +08:00
LICENSE Adding license and authors file 2013-12-30 13:11:49 +07:00
README.rst Add CloudFlow info to Mistral documentation 2018-07-04 09:29:57 +03:00
lower-constraints.txt Support Manila actions in Mistral 2018-07-24 15:11:08 +02:00
requirements.txt Gate fix for failing at openstack-tox-docs 2018-12-27 08:25:14 +05:30
run_functional_tests.sh Removed mistral/tests/functional 2016-01-29 11:04:03 +09:00
run_tests.sh switch mysql functional tests to PyMySQL 2018-06-27 20:40:39 +00:00
setup.cfg Update mailinglist from dev to discuss 2019-01-04 14:59:24 +00:00
setup.py Updated from global requirements 2017-03-03 10:17:44 +00:00
test-requirements.txt Follow the new PTI for document build 2018-07-09 14:54:23 +07:00
tox.ini Merge "Update min tox version to 2.0" 2018-11-13 10:05:15 +00:00

README.rst

Team and repository tags

image

Mistral

Workflow Service for OpenStack cloud. This project aims to provide a mechanism to define tasks and workflows without writing code, manage and execute them in the cloud environment.

Project Resources