File 0001-Add-magnum.bash_completion.patch of Package python-magnumclient
From 1e8a27350ee4dee6fc88b459d13ffa909f96b53d Mon Sep 17 00:00:00 2001
From: coldmoment <ztehypervisor@zte.com.cn>
Date: Mon, 5 Sep 2016 11:13:20 +0800
Subject: [PATCH] Add magnum.bash_completion This can support the function of
autocomplete for magnum's commands
Closes-Bug: #1614853
Change-Id: Icdc50fbefa5ec46e608567895b1f74c26c0f5992
---
tools/magnum.bash_completion | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 tools/magnum.bash_completion
diff --git a/tools/magnum.bash_completion b/tools/magnum.bash_completion
new file mode 100644
index 0000000..4e5002f
--- /dev/null
+++ b/tools/magnum.bash_completion
@@ -0,0 +1,27 @@
+_magnum_opts="" # lazy init
+_magnum_flags="" # lazy init
+_magnum_opts_exp="" # lazy init
+_magnum()
+{
+ local cur prev nbc cflags
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+
+ if [ "x$_magnum_opts" == "x" ] ; then
+ nbc="`magnum bash-completion | sed -e "s/ *-h */ /" -e "s/ *-i */ /"`"
+ _magnum_opts="`echo "$nbc" | sed -e "s/--[a-z0-9_-]*//g" -e "s/ */ /g"`"
+ _magnum_flags="`echo " $nbc" | sed -e "s/ [^-][^-][a-z0-9_-]*//g" -e "s/ */ /g"`"
+ _magnum_opts_exp="`echo "$_magnum_opts" | tr ' ' '|'`"
+ fi
+
+ if [[ " ${COMP_WORDS[@]} " =~ " "($_magnum_opts_exp)" " && "$prev" != "help" ]] ; then
+ COMPLETION_CACHE=~/.magnumclient/*/*-cache
+ cflags="$_magnum_flags "$(cat $COMPLETION_CACHE 2> /dev/null | tr '\n' ' ')
+ COMPREPLY=($(compgen -W "${cflags}" -- ${cur}))
+ else
+ COMPREPLY=($(compgen -W "${_magnum_opts}" -- ${cur}))
+ fi
+ return 0
+}
+complete -F _magnum magnum
--
2.10.1