Python client for Mistral REST API.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Zuul 608ec45cef Merge "Allow enforcing usage of "raw" definitions" 1 month ago
doc [community goal] Update contributor documentation 4 months ago
functionaltests/resources/v2 remove unused gate code 2 years ago
mistralclient Allow enforcing usage of "raw" definitions 2 months ago
releasenotes Allow enforcing usage of "raw" definitions 2 months ago
tools Remove unused pylint 5 years ago
.coveragerc Add script for unit test coverage job 2 years ago
.gitignore Switch to using stestr 3 years ago
.gitreview OpenDev Migration Patch 2 years ago
.stestr.conf Migrate python-mistralclient jobs to Zuul v3 3 years ago
.zuul.yaml Remove tripleo job from mistralclient 4 months ago
CONTRIBUTING.rst [community goal] Update contributor documentation 4 months ago
LICENSE Moving Mistral Client code from main Mistral repository 8 years ago
README.rst Replace git.openstack.org URLs with opendev.org URLs 2 years ago
functional_creds.conf.sample Fixing launching mistralclient tests 6 years ago
lower-constraints.txt Add support for code sources and dynamic actions 9 months ago
requirements.txt [goal] Migrate testing to ubuntu focal 1 year ago
run_functional_tests.sh Add script to run functional CLI and client tests locally 7 years ago
setup.cfg Add support for code sources and dynamic actions 9 months ago
setup.py Cleanup py27 support 1 year ago
test-requirements.txt Fix hacking min version to 3.0.1 1 year ago
tox.ini Use py3 as the default runtime for tox 5 months ago

README.rst

Team and repository tags

image

Mistral

Latest Version

Mistral is a workflow service. Most business processes consist of multiple distinct interconnected steps that need to be executed in a particular order in a distributed environment. A user can describe such a process as a set of tasks and their transitions. After that, it is possible to upload such a description to Mistral, which will take care of state management, correct execution order, parallelism, synchronization and high availability.

Mistral also provides flexible task scheduling so that it can run a process according to a specified schedule (for example, every Sunday at 4.00pm) instead of running it immediately. In Mistral terminology such a set of tasks and relations between them is called a workflow.

Mistral client

Python client for Mistral REST API. Includes python library for Mistral API and Command Line Interface (CLI) library.

Installation

First of all, clone the repo and go to the repo directory:

$ git clone https://opendev.org/openstack/python-mistralclient.git
$ cd python-mistralclient

Then just run:

$ pip install -e .

or:

$ pip install -r requirements.txt
$ python setup.py install

Running Mistral client

If Mistral authentication is enabled, provide the information about OpenStack auth to environment variables. Type:

$ export OS_AUTH_URL=http://<Keystone_host>:5000/v2.0
$ export OS_USERNAME=admin
$ export OS_TENANT_NAME=tenant
$ export OS_PASSWORD=secret
$ export OS_MISTRAL_URL=http://<Mistral host>:8989/v2  (optional, by
  default URL=http://localhost:8989/v2)

and in the case that you are authenticating against keystone over https:

$ export OS_CACERT=<path_to_ca_cert>

Note

In client, we can use both Keystone auth versions - v2.0 and v3. But server supports only v3.*

To make sure Mistral client works, type:

$ mistral workbook-list

You can see the list of available commands typing:

$ mistral --help