diff options
| -rw-r--r-- | contrib/bash-completion/kolla-ansible | 21 | ||||
| -rw-r--r-- | releasenotes/notes/add-kolla-ansible-bash-completion-script-74d39268a829e1a2.yaml | 4 | ||||
| -rwxr-xr-x | tools/kolla-ansible | 32 |
3 files changed, 57 insertions, 0 deletions
diff --git a/contrib/bash-completion/kolla-ansible b/contrib/bash-completion/kolla-ansible new file mode 100644 index 000000000..56b8ea8ff --- /dev/null +++ b/contrib/bash-completion/kolla-ansible @@ -0,0 +1,21 @@ +_kolla_ansible() { + local cur prev opts + + COMPREPLY=() + + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + kolla_ansible_opts="$(kolla-ansible bash-completion)" + kolla_ansible_flags="$(echo ${kolla_ansible_opts} | sed 's/ [^-][a-z0-9_-]*//g' )" + kolla_ansible_actions="$(echo ${kolla_ansible_opts} | sed 's/--[a-z0-9-]*//g' | sed 's/ -[a-z]//g' )" + + if [[ ${cur} == -* ]] ; then + COMPREPLY=( $(compgen -W "${kolla_ansible_flags}" -- ${cur}) ) + return 0 + else + COMPREPLY=( $(compgen -W "${kolla_ansible_actions}" -- ${cur}) ) + return 0 + fi +} + +complete -F _kolla_ansible -A file kolla-ansible diff --git a/releasenotes/notes/add-kolla-ansible-bash-completion-script-74d39268a829e1a2.yaml b/releasenotes/notes/add-kolla-ansible-bash-completion-script-74d39268a829e1a2.yaml new file mode 100644 index 000000000..ea6d67a36 --- /dev/null +++ b/releasenotes/notes/add-kolla-ansible-bash-completion-script-74d39268a829e1a2.yaml @@ -0,0 +1,4 @@ +--- +features: + - Add kolla-ansible bash-completion script under + contrib/bash-completion folder. diff --git a/tools/kolla-ansible b/tools/kolla-ansible index 5af0df5d2..7ecde31fc 100755 --- a/tools/kolla-ansible +++ b/tools/kolla-ansible @@ -64,6 +64,34 @@ Commands: EOF } +function bash_completion { +cat <<EOF +--inventory -i +--playbook -p +--configdir +--key -k +--help -h +--tags -t +--extra -e +--passwords +--verbose -v +prechecks +check +mariadb_recovery +bootstrap-servers +destroy +deploy +deploy-bifrost +deploy-servers +post-deploy +pull +reconfigure +stop +certificates +upgrade +genconfig +EOF +} SHORT_OPTS="hi:p:t:k:e:v" LONG_OPTS="help,inventory:,playbook:,tags:,key:,extra:,verbose,configdir:,passwords:,yes-i-really-really-mean-it,include-images" @@ -233,6 +261,10 @@ EOF ACTION="Generate configuration files for enabled OpenStack services" EXTRA_OPTS="$EXTRA_OPTS -e action=config" ;; +(bash-completion) + bash_completion + exit 0 + ;; (*) usage exit 0 ;; |
