# # This is the bash auto completion script for the rhc command # _rhc() {
local cur opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
if [ $COMP_CWORD -eq 1 ]; then
opts="domain app sshkey port-forward help"
COMPREPLY=($(compgen -W "${opts}" -- ${cur}))
elif [ $COMP_CWORD -eq 2 ]; then
case "${COMP_WORDS[1]}" in
domain)
opts="create show alter status destroy"
;;
app)
opts="create show start stop force-stop restart reload status destroy tidy add-alias remove-alias threaddump snapshot tail cartridge"
;;
sshkey)
opts="add update remove list"
;;
port-forward)
opts="--debug --help --rhlogin --password --namespace --config --timeout --app"
;;
*)
opts=""
;;
esac
elif [ $COMP_CWORD -eq 3 ]; then
case "${COMP_WORDS[1]}" in
domain)
case "${COMP_WORDS[2]}" in
create | alter | destroy)
opts="--debug --help --rhlogin --password --namespace --config --timeout"
;;
show | status)
opts="--debug --help --rhlogin --password --config --timeout"
;;
*)
;;
esac
;;
app)
case "${COMP_WORDS[2]}" in
create)
opts="--debug --help --rhlogin --password --no-dns --nogit --app --repo --type --enable-jenkins --config --timeout"
;;
show | start | stop | force-stop | restart | reload | status | destroy | tidy | add-alias | remove-alias | threaddump | destroy )
opts="--debug --help --rhlogin --password --app --alias --bypass --config --timeout"
;;
tail)
opts="--debug --help --rhlogin --password --app --opts --filepath --config --timeout"
;;
snapshot)
opts="save restore"
;;
cartridge)
opts="add remove stop start restart status reload list"
;;
*)
;;
esac
;;
sshkey)
case "${COMP_WORDS[2]}" in
add | update)
opts="--debug --help --rhlogin --password --identifier --ssh --config --timeout"
;;
remove)
opts="--debug --help --rhlogin --password --identifier --config --timeout"
;;
list)
opts="--debug --help --rhlogin --password --config --timeout"
;;
*)
;;
esac
;;
esac
elif [ $COMP_CWORD -eq 4 ]; then
case "${COMP_WORDS[1]}" in
app)
case "${COMP_WORDS[2]}" in
snapshot)
case "${COMP_WORDS[3]}" in
save | restore)
opts="--debug --help --rhlogin --password --app --filepath --config --timeout"
;;
*)
;;
esac
;;
cartridge)
case "${COMP_WORDS[3]}" in
add | remove | stop | start | restart | status | reload | list)
opts="--debug --help --rhlogin --password --app --cartridge --config --timeout"
;;
*)
;;
esac
;;
esac
;;
esac
fi
if [ ${#opts[@]} -gt 0 ]; then COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ); fi
return 0
} complete -o default -F _rhc rhc