From 8dd1190dd544cd87f565384f060ff9efcb37516f Mon Sep 17 00:00:00 2001 From: Wido den Hollander Date: Tue, 13 May 2014 23:48:25 +0200 Subject: [PATCH] Improve Bash completion for various tools --- src/bash_completion/ceph | 29 +++++++++++++++++++++-------- src/bash_completion/rados | 2 +- src/bash_completion/rbd | 10 +++++++--- 3 files changed, 29 insertions(+), 12 deletions(-) diff --git a/src/bash_completion/ceph b/src/bash_completion/ceph index 2ea53c603072e..eef885d051fcf 100644 --- a/src/bash_completion/ceph +++ b/src/bash_completion/ceph @@ -16,6 +16,7 @@ _ceph() COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" + prevprev="${COMP_WORDS[COMP_CWORD-2]}" if [[ ${cur} == -* ]] ; then COMPREPLY=( $(compgen -W "--conf -c --name --id -m --version -s --status -w --watch -o --out-file -i --in-file" -- ${cur}) ) @@ -32,29 +33,41 @@ _ceph() return 0 ;; auth) - COMPREPLY=( $(compgen -W "list add del" -- ${cur}) ) + COMPREPLY=( $(compgen -W "list add del print_key print-key export get get-key import get-or-create get-or-create-key" -- ${cur}) ) return 0 ;; pg) - COMPREPLY=( $(compgen -W "stat dump getmap map send_pg_creates scrub deep-scrub repair" -- ${cur}) ) + COMPREPLY=( $(compgen -W "stat dump dump_json dump_stuck force_create_pg getmap map send_pg_creates scrub deep-scrub repair" -- ${cur}) ) return 0 ;; osd) - COMPREPLY=( $(compgen -W "tell stat pool dump getmaxosd tree getmap getcrushmap lspools" -- ${cur}) ) + COMPREPLY=( $(compgen -W "stat pool dump getmaxosd tree getmap getcrushmap lspools reweight-by-utilization trash tier" -- ${cur}) ) return 0 ;; mon) - COMPREPLY=( $(compgen -W "tell stat getmap" -- ${cur}) ) + COMPREPLY=( $(compgen -W "stat getmap add remove dump" -- ${cur}) ) return 0 ;; mds) - COMPREPLY=( $(compgen -W "tell stat stat getmap dump compat" -- ${cur}) ) + COMPREPLY=( $(compgen -W "stat stat getmap dump compat" -- ${cur}) ) return 0 ;; - *) - COMPREPLY=( $(compgen -W "osd mon mds pg auth" -- ${cur}) ) + pool) + COMPREPLY=( $(compgen -W "create delete rename stats set set-quota get rmsnap mksnap" -- ${cur}) ) return 0 - ;; + ;; + health) + COMPREPLY=( $(compgen -W "detail" -- ${cur}) ) + return 0 + ;; + tier) + COMPREPLY=( $(compgen -W "remove cache-mode" -- ${cur}) ) + return 0 + ;; + ceph) + COMPREPLY=( $(compgen -W "osd mon mds pg auth health df" -- ${cur}) ) + return 0 + ;; esac } complete -F _ceph ceph diff --git a/src/bash_completion/rados b/src/bash_completion/rados index aa277c340a4a8..a1bf3f0260eda 100644 --- a/src/bash_completion/rados +++ b/src/bash_completion/rados @@ -31,7 +31,7 @@ _rados() COMPREPLY=( $(compgen -A hostname ${cur}) ) return 0 ;; - *) + rados) COMPREPLY=( $(compgen -W "lspools mkpool rmpool df ls chown get put create rm listxattr getxattr setxattr rmxattr stat mapext lssnap mksnap rmsnap rollback bench" -- ${cur}) ) return 0 ;; diff --git a/src/bash_completion/rbd b/src/bash_completion/rbd index 7fe8bee775db3..5e9a7335766ef 100644 --- a/src/bash_completion/rbd +++ b/src/bash_completion/rbd @@ -32,11 +32,15 @@ _rbd() return 0 ;; snap) - COMPREPLY=( $(compgen -W "ls create rollback rm" -- ${cur}) ) + COMPREPLY=( $(compgen -W "ls create rollback rm purge protect unprotect" -- ${cur}) ) return 0 ;; - *) - COMPREPLY=( $(compgen -W "ls list info create resize rm export import cp copy mv rename snap watch map unmap showmapped" -- ${cur}) ) + lock) + COMPREPLY=( $(compgen -W "list add remove" -- ${cur}) ) + return 0 + ;; + rbd) + COMPREPLY=( $(compgen -W "ls list info create clone flatten resize rm export import diff export-diff import-diff cp copy mv rename snap watch lock bench-write map unmap showmapped" -- ${cur}) ) return 0 ;; esac -- 2.47.3