Add bash completion for docker-compose build --pull

Also adds a fix for an error message on some completions when no
compose file is present:

    docker-compose build awk: cannot open docker-compose.yml (No such file or directory)

Signed-off-by: Harald Albers <github@albersweb.de>
This commit is contained in:
Harald Albers 2015-09-18 18:12:30 +02:00
parent 3e58003bd3
commit af7b98ff56

View File

@ -44,7 +44,7 @@ __docker_compose_services_all() {
# All services that have an entry with the given key in their compose_file section # All services that have an entry with the given key in their compose_file section
___docker_compose_services_with_key() { ___docker_compose_services_with_key() {
# flatten sections to one line, then filter lines containing the key and return section name. # flatten sections to one line, then filter lines containing the key and return section name.
awk '/^[a-zA-Z0-9]/{printf "\n"};{printf $0;next;}' "${compose_file:-$(__docker_compose_compose_file)}" | awk -F: -v key=": +$1:" '$0 ~ key {print $1}' awk '/^[a-zA-Z0-9]/{printf "\n"};{printf $0;next;}' "${compose_file:-$(__docker_compose_compose_file)}" 2>/dev/null | awk -F: -v key=": +$1:" '$0 ~ key {print $1}'
} }
# All services that are defined by a Dockerfile reference # All services that are defined by a Dockerfile reference
@ -87,7 +87,7 @@ __docker_compose_services_stopped() {
_docker_compose_build() { _docker_compose_build() {
case "$cur" in case "$cur" in
-*) -*)
COMPREPLY=( $( compgen -W "--help --no-cache" -- "$cur" ) ) COMPREPLY=( $( compgen -W "--help --no-cache --pull" -- "$cur" ) )
;; ;;
*) *)
__docker_compose_services_from_build __docker_compose_services_from_build