Python client for Mistral REST API.
Go to file
Mike Fedosin d9da161c16 Don't create client for help and bash completion
Currently when we need a help, client object is created
and authentication is performed. This is completely useless
and leads to unnecessary actions in the background.

This patch:
1. Prevents creation of client object (and therefore
authentication) for help or bash-completion commands.
2. Removes a workaround from keystone auth module that disables
sending requests to the server if help or bash-completion
commands are executing.
3. Adds related unit tests.

Change-Id: Ia26d7f4e56f5ef3ae0ac5e94e8e77d1a78f8829e
Closes-bug: #1720795
2017-10-09 12:28:22 +03:00
doc/source Merge "Update and optimize documentation links" 2017-07-25 04:52:28 +00:00
functionaltests Create and run a workflow within a namespace 2017-08-13 15:39:32 +00:00
mistralclient Don't create client for help and bash completion 2017-10-09 12:28:22 +03:00
releasenotes Namespaces release note 2017-08-14 09:57:14 +00:00
tools Updated tox.ini to pick up requirements from upper constraints 2016-11-22 12:23:32 +05:30
.gitignore Update the gitingore 2017-03-22 02:43:12 +05:30
.gitreview Update .gitreview file for project rename 2015-06-12 23:12:30 +00:00
CONTRIBUTING.rst Update and optimize documentation links 2017-07-21 09:57:38 +08:00
functional_creds.conf.sample Fixing launching mistralclient tests 2015-07-11 14:11:10 +03:00
LICENSE Moving Mistral Client code from main Mistral repository 2014-01-17 07:15:03 -08:00
README.rst Make README better 2017-07-25 18:17:12 +05:30
requirements.txt Updated from global requirements 2017-09-11 21:29:55 +00:00
run_functional_tests.sh Add script to run functional CLI and client tests locally 2014-09-30 13:17:58 +04:00
setup.cfg Merge "Add CLI for event trigger operations" 2017-07-25 08:38:00 +00:00
setup.py Updated from global requirements 2017-03-02 11:54:47 +00:00
test-requirements.txt Updated from global requirements 2017-09-16 23:23:30 +00:00
tox.ini Enable some off-by-default checks 2017-06-27 16:55:56 +08:00

Team and repository tags

image

Mistral

Latest Version

Downloads

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 git://git.openstack.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