mistral/doc/source/guides/mistralclient_guide.rst
Nikolay Mahotkin b1acf3da60 Updating mistralclient docs
* Mistralclient guide doc is updated
   using the current mistral CLI help strings.

Change-Id: I41527f71622077da353953fa8e6717d61571a164
2016-09-16 12:08:01 +03:00

14 KiB

Mistral Client / CLI Guide

Mistralclient installation

To install python-mistralclient, it is required to have pip (in most cases). Make sure that pip is installed. Then type:

pip install python-mistralclient

Or, if it is needed to install python-mistralclient from master branch, type:

pip install git+https://github.com/openstack/python-mistralclient.git

After python-mistralclient is installed you will see command mistral in your environment.

Configure authentication against Keystone

If Keystone is used for authentication in Mistral, then the environment should have auth variables:

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 when 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.

You can see the list of available commands by typing:

mistral --help

To make sure Mistral client works, type:

mistral workbook-list

Mistralclient commands

Workbooks

workbook-create: :

usage: mistral workbook-create <definition>

Create new workbook.

positional arguments:

definition - Workbook definition file.

workbook-delete: :

usage: mistral workbook-delete <name> [<name> ...]

Delete workbook.

positional arguments:

name - Name of workbook(s).

workbook-get: :

usage: mistral workbook-get <name>

Show specific workbook.

positional arguments:

name - Workbook name.

workbook-get-definition: :

usage: mistral workbook-get-definition <name>

Show workbook definition.

positional arguments:

name - Workbook name.

workbook-list: :

usage: mistral workbook-list

List all workbooks.

workbook-update: :

usage: mistral workbook-update <definition>

Update workbook.

positional arguments:

definition - Workbook definition file.

workbook-validate: :

usage: mistral workbook-validate <definition>

Validate workbook.

positional arguments:

definition - Workbook definition file.

Workflows

workflow-create: :

usage: mistral workflow-create <definition> [--public]

Create new workflow.

positional arguments:

definition - Workflow definition file.

optional arguments:

--public - With this flag workflow will be marked as "public".

workflow-delete: :

usage: mistral workflow-delete <name> [<name> ...]

Delete workflow.

positional arguments:

name - Name of workflow(s).

workflow-get: :

usage: mistral workflow-get <name>

Show specific workflow.

positional arguments:

name - Workflow name.

workflow-get-definition: :

usage: mistral workflow-get-definition <name>

Show workflow definition.

positional arguments:

name - Workflow name.

workflow-list: :

usage: mistral workflow-list

List all workflows.

workflow-update: :

usage: mistral workflow-update <definition>

Update workflow.

positional arguments:

definition - Workflow definition.

workflow-validate: :

usage: mistral workflow-validate <definition>

Validate workflow.

positional arguments:

definition - Workflow definition file.

Actions

action-create: :

usage: mistral action-create <definition> [--public]

Create new action.

positional arguments:

definition - Action definition file.

optional arguments:

--public - With this flag action will be marked as "public".

action-delete: :

usage: mistral action-delete action [action ...]

Delete action.

positional arguments:

action - Name or ID of action(s).

action-get: :

usage: mistral action-get <action>

Show specific action.

positional arguments:

action - Action (name or ID).

action-get-definition: :

usage: mistral action-get-definition <name>

Show action definition.

positional arguments:

name - Action name.

action-list: :

usage: mistral action-list

List all actions.

action-update: :

usage: mistral action-update [--public] [--id ID] <definition>

Update action.

positional arguments:

definition - Action definition file.

optional arguments:

--id ID Action ID. --public With this flag, action will be marked as "public".

action-validate: :

usage: mistral action-validate <definition>

Validate action.

positional arguments:

definition - Action definition file.

Workflow executions

execution-create: :

usage: mistral execution-create [-d DESCRIPTION]
                                <workflow_identifier> [<workflow_input>] [<params>]

Create a new execution.

positional arguments:
workflow_identifier - Workflow ID or name. Workflow name has been deprecated

since Mitaka.

workflow_input - Workflow input. params - Workflow additional parameters.

optional arguments:
-d DESCRIPTION, --description DESCRIPTION

Execution description

execution-delete: :

usage: mistral execution-delete <execution> [<execution> ...]

Delete execution.

positional arguments:

execution - Id of execution identifier(s).

execution-get: :

usage: mistral execution-get <execution>

Show specific execution.

positional arguments:

execution - Execution identifier.

execution-get-input: :

usage: mistral execution-get-input <id>

Show execution input data.

positional arguments:

id - Execution ID.

execution-get-output: :

usage: mistral execution-get-output [-h] id

Show execution output data.

positional arguments:

id - Execution ID.

execution-list: :

usage: mistral execution-list [--marker [MARKER]] [--limit [LIMIT]]
                              [--sort_keys [SORT_KEYS]]
                              [--sort_dirs [SORT_DIRS]]

List all executions.

optional arguments:
--marker [MARKER] The last execution uuid of the previous page, displays

list of executions after "marker".

--limit [LIMIT] Maximum number of executions to return in a single

result.

--sort_keys [SORT_KEYS]

Comma-separated list of sort keys to sort results by. Default: created_at. Example: mistral execution-list --sort_keys=id,description

--sort_dirs [SORT_DIRS]

Comma-separated list of sort directions. Default: asc. Example: mistral execution-list --sort_keys=id,description --sort_dirs=asc,desc

execution-update: :

usage: mistral execution-update [-s {RUNNING,PAUSED,SUCCESS,ERROR,CANCELLED}]
                                [-e ENV] [-d DESCRIPTION] <id>

Update execution.

positional arguments:

id - Execution identifier.

optional arguments:
-s {RUNNING,PAUSED,SUCCESS,ERROR,CANCELLED}, --state {RUNNING,PAUSED,SUCCESS,ERROR,CANCELLED}

Execution state

-e ENV, --env ENV Environment variables -d DESCRIPTION, --description DESCRIPTION Execution description

Task executions

task-get: :

usage: mistral task-get <id>

Show specific task.

positional arguments:

id - Task identifier.

task-get-published: :

usage: mistral task-get-published <id>

Show task published variables.

positional arguments:

id - Task ID.

task-get-result: :

usage: mistral task-get-result <id>

Show task output data.

positional arguments:

id - Task ID.

task-list: :

usage: mistral task-list [<workflow_execution>]

List all tasks.

positional arguments:

workflow_execution - Workflow execution ID associated with list of Tasks.

task-rerun: :

usage: mistral task-rerun [--resume] [-e ENV] <id>

Rerun an existing task.

positional arguments:

id - Task identifier.

optional arguments:
--resume rerun only failed or unstarted action executions for

with-items task.

-e ENV, --env ENV Environment variables.

Action executions

action-execution-delete: :

usage: mistral action-execution-delete <action_execution> [<action_execution> ...]

Delete action execution.

positional arguments:

action_execution - Action execution ID.

action-execution-get: :

usage: mistral action-execution-get <action_execution>

Show specific Action execution.

positional arguments:

action_execution - Action execution ID.

action-execution-get-input: :

usage: mistral action-execution-get-input <id>

Show Action execution input data.

positional arguments:

id - Action execution ID.

action-execution-get-output: :

usage: mistral action-execution-get-output <id>

Show Action execution output data.

positional arguments:

id - Action execution ID.

action-execution-list: :

usage: mistral action-execution-list [<task-execution-id>]

List all Action executions.

positional arguments:

task-execution-id - Task execution ID.

action-execution-update: :

usage: mistral action-execution-update [--state {IDLE,RUNNING,SUCCESS,ERROR}] [--output <OUTPUT>] <id>

Update specific Action execution.

positional arguments:

id - Action execution ID.

optional arguments:
--state {IDLE,RUNNING,SUCCESS,ERROR}

Action execution state

--output OUTPUT - Action execution output

run-action: :

usage: mistral run-action <name> [<input>] [-t <TARGET>]

Create new Action execution or just run specific action.

positional arguments:

name - Action name to execute. input - Action input.

optional arguments:

-s, --save-result - Save the result into DB. -t TARGET, --target TARGET Action will be executed on <target> executor.

Cron-triggers

cron-trigger-create: :

usage: mistral cron-trigger-create [--params <PARAMS>] [--pattern <* * * * *>]
                                   [--first-time <YYYY-MM-DD HH:MM>]
                                   [--count <integer>]
                                   <name> <workflow_identifier> [<workflow_input>]

Create new trigger.

positional arguments:

name - Cron trigger name. workflow_identifier - Workflow name or ID. workflow_input - Workflow input.

optional arguments:

--params PARAMS - Workflow params. --pattern <* * * * *> Cron trigger pattern. --first-time <YYYY-MM-DD HH:MM> Date and time of the first execution. --count <integer> Number of wanted executions.

cron-trigger-delete: :

usage: mistral cron-trigger-delete <name> [<name> ...]

Delete trigger.

positional arguments:

name - Name of cron trigger(s).

cron-trigger-get: :

usage: mistral cron-trigger-get <name>

Show specific cron trigger.

positional arguments:

name - Cron trigger name.

cron-trigger-list: :

usage: mistral cron-trigger-list

List all cron triggers.

Environments

environment-create: :

usage: mistral environment-create <file>

Create new environment.

positional arguments:

file - Environment configuration file in JSON or YAML.

environment-delete: :

usage: mistral environment-delete <environment> [<environment> ...]

Delete environment.

positional arguments:

environment - Name of environment(s).

environment-get: :

usage: mistral environment-get <name>

Show specific environment.

positional arguments:

name - Environment name.

environment-list: :

usage: mistral environment-list

List all environments.

environment-update: :

usage: mistral environment-update <file>

Update environment.

positional arguments:

file - Environment configuration file in JSON or YAML.

Members

member-create: :

usage: mistral member-create <resource_id> <resource_type> <member_id>

Shares a resource to another tenant.

positional arguments:

resource_id - Resource ID to be shared. resource_type - Resource type. member_id - Project ID to whom the resource is shared to.

member-delete: :

usage: mistral member-delete <resource> <resource_type> <member_id>

Delete a resource sharing relationship.

positional arguments:

resource - Resource ID to be shared. resource_type - Resource type. member_id - Project ID to whom the resource is shared to.

member-get: :

usage: mistral member-get [-m MEMBER_ID]
                          <resource> <resource_type>

Show specific member information.

positional arguments:

resource - Resource ID to be shared. resource_type - Resource type.

optional arguments:
-m MEMBER_ID, --member-id MEMBER_ID

Project ID to whom the resource is shared to. No need to provide this param if you are the resource member.

member-list: :

usage: mistral member-list <resource_id> <resource_type>

List all members.

positional arguments:

resource_id - Resource id to be shared. resource_type - Resource type.

member-update: :

usage: mistral member-update [-m MEMBER_ID]
                             [-s {pending,accepted,rejected}]
                             <resource_id> <resource_type>

Update resource sharing status.

positional arguments:

resource_id - Resource ID to be shared. resource_type - Resource type.

optional arguments:
-m MEMBER_ID, --member-id MEMBER_ID

Project ID to whom the resource is shared to. No need to provide this param if you are the resource member.

-s {pending,accepted,rejected}, --status {pending,accepted,rejected}

status of the sharing.

Services API

service-list: :

usage: mistral service-list

List all services.