Files
python-mistralclient/tools/mistral.bash_completion
LingxianKong dd72827714 Update commands bash completion script
* add a set of action-execution commands
* add workflow-validate&workbook-validate commands
* delete some commands not supported any more

[todo]
* replace hard coded commands with a dynamic way

Change-Id: Ia8b10e282fdb7fa8266f290192807a6fb2210065
2015-04-28 20:07:58 +08:00

72 lines
3.9 KiB
Bash

#!/bin/bash
_mistral()
{
declare -A SUBCOMMANDS
declare -A OPTS
OPTS["action-execution-get"]="-h --help -f --format -c --column --max-width --prefix"
OPTS["action-execution-get-input"]="-h --help"
OPTS["action-execution-get-output"]="-h --help"
OPTS["action-execution-list"]="-h --help -f --format -c --column --max-width --quote"
OPTS["action-execution-update"]="-h --help -f --format -c --column --max-width --prefix --state --output"
OPTS["action-create"]="-h --help -f --format -c --column --max-width --quote"
OPTS["action-delete"]="-h --help"
OPTS["action-get"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["action-get-definition"]="-h --help"
OPTS["action-list"]="-h --help -f --format -c --column --max-width --quote"
OPTS["action-update"]="-h --help -f --format -c --column --max-width --quote"
OPTS["complete"]="-h --help --name --shell"
OPTS["cron-trigger-create"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["cron-trigger-delete"]="-h --help"
OPTS["cron-trigger-get"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["cron-trigger-list"]="-h --help -f --format -c --column --max-width --quote"
OPTS["environment-create"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["environment-delete"]="-h --help"
OPTS["environment-get"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["environment-list"]="-h --help -f --format -c --column --max-width --quote"
OPTS["environment-update"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["execution-create"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["execution-delete"]="-h --help"
OPTS["execution-get"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["execution-get-input"]="-h --help"
OPTS["execution-get-output"]="-h --help"
OPTS["execution-list"]="-h --help -f --format -c --column --max-width --quote"
OPTS["execution-update"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["help"]="-h --help"
OPTS["task-get"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["task-get-result"]="-h --help"
OPTS["task-get-published"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["task-list"]="-h --help -f --format -c --column --max-width --quote"
OPTS["workbook-create"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["workbook-delete"]="-h --help"
OPTS["workbook-get"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["workbook-get-definition"]="-h --help"
OPTS["workbook-list"]="-h --help -f --format -c --column --max-width --quote"
OPTS["workbook-update"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["workbook-validate"]="-h --help -f --format -c --column --max-width --prefix"
OPTS["workflow-create"]="-h --help -f --format -c --column --max-width --quote"
OPTS["workflow-delete"]="-h --help"
OPTS["workflow-get"]="-h --help -f --format -c --column --max-width --variable --prefix"
OPTS["workflow-get-definition"]="-h --help"
OPTS["workflow-list"]="-h --help -f --format -c --column --max-width --quote"
OPTS["workflow-update"]="-h --help -f --format -c --column --max-width --quote"
OPTS["workflow-validate"]="-h --help -f --format -c --column --max-width --prefix"
COMMANDS="${!OPTS[*]}"
COMPREPLY=()
local cur="${COMP_WORDS[COMP_CWORD]}"
local prev="${COMP_WORDS[COMP_CWORD-1]}"
if [[ $cur =~ (\.|\~|\/).* ]] ; then
_filedir
elif [ $COMP_CWORD == "1" ] ; then
COMPREPLY=($(compgen -W "$COMMANDS" -- ${cur}))
elif [ $COMP_CWORD == "2" ] ; then
COMPREPLY=($(compgen -W "${OPTS[${prev}]}" -- ${cur}))
fi
return 0
}
complete -F _mistral mistral