-
Notifications
You must be signed in to change notification settings - Fork 1
/
bash-completion.sh
39 lines (34 loc) · 1.13 KB
/
bash-completion.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
_os4instancectl()
{
local cur prev opts diropts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
opts="help setup ls add rm start stop update erase lock unlock autoscale manage"
opts+=" --help --force --color --project-dir --fast --patient --no-pid-file --no-add-account --verbose"
opts+=" --compose-template --config-template"
opts+=" --long --metadata --online --offline --error --version --locked --unlocked"
opts+=" --clone-from --local-only"
opts+=" --tag --management-tool"
opts+=" --migrations-finalize --migrations-no-ask"
opts+=" --accounts --dry-run"
opts+=" --action"
diropts="ls|rm|start|stop|update|erase|lock|unlock|autoscale|manage|--clone-from"
if [[ ${prev} =~ ${diropts} ]]; then
COMPREPLY=( $(cd /srv/openslides/os4-instances && compgen -d -- ${cur}) )
return 0
fi
if [[ ${prev} == --*template ]]; then
_filedir
return 0
fi
if [[ ${prev} =~ --management-tool|-O ]]; then
_filedir
return 0
fi
if [[ ${cur} == * ]] ; then
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
return 0
fi
}
complete -F _os4instancectl os4instancectl