Merge pull request #3063 from albers/completion-multiple-compose-files

add support for multiple compose files to bash completion
This commit is contained in:
Daniel Nephin 2016-03-09 11:12:34 -08:00
commit 8a86e204a0

View File

@ -18,7 +18,11 @@
__docker_compose_q() { __docker_compose_q() {
docker-compose 2>/dev/null ${compose_file:+-f $compose_file} ${compose_project:+-p $compose_project} "$@" local file_args
if [ ${#compose_files[@]} -ne 0 ] ; then
file_args="${compose_files[@]/#/-f }"
fi
docker-compose 2>/dev/null $file_args ${compose_project:+-p $compose_project} "$@"
} }
# suppress trailing whitespace # suppress trailing whitespace
@ -456,14 +460,14 @@ _docker_compose() {
# special treatment of some top-level options # special treatment of some top-level options
local command='docker_compose' local command='docker_compose'
local counter=1 local counter=1
local compose_file compose_project local compose_files=() compose_project
while [ $counter -lt $cword ]; do while [ $counter -lt $cword ]; do
case "${words[$counter]}" in case "${words[$counter]}" in
--file|-f) --file|-f)
(( counter++ )) (( counter++ ))
compose_file="${words[$counter]}" compose_files+=(${words[$counter]})
;; ;;
--project-name|p) --project-name|-p)
(( counter++ )) (( counter++ ))
compose_project="${words[$counter]}" compose_project="${words[$counter]}"
;; ;;