From de40f3997a7aae94e925d8f694e2161b1b1b92bb Mon Sep 17 00:00:00 2001 From: Harald Albers Date: Thu, 23 Jul 2015 14:19:13 +0200 Subject: [PATCH] Complete all known driver options if no log driver was specified Without this fix, `docker --log-opt ` would not complete anything because the completions were driver specific. Signed-off-by: Harald Albers --- contrib/completion/bash/docker | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/contrib/completion/bash/docker b/contrib/completion/bash/docker index 5097cca4ce..273d9b7019 100755 --- a/contrib/completion/bash/docker +++ b/contrib/completion/bash/docker @@ -227,15 +227,22 @@ __docker_log_drivers() { __docker_log_driver_options() { # see docs/reference/logging/index.md + local fluentd_options="fluentd-address fluentd-tag" + local gelf_options="gelf-address gelf-tag" + local syslog_options="syslog-address syslog-facility syslog-tag" + case $(__docker_value_of_option --log-driver) in + '') + COMPREPLY=( $( compgen -W "$fluentd_options $gelf_options $syslog_options" -S = -- "$cur" ) ) + ;; fluentd) - COMPREPLY=( $( compgen -W "fluentd-address fluentd-tag" -S = -- "$cur" ) ) + COMPREPLY=( $( compgen -W "$fluentd_options" -S = -- "$cur" ) ) ;; gelf) - COMPREPLY=( $( compgen -W "gelf-address gelf-tag" -S = -- "$cur" ) ) + COMPREPLY=( $( compgen -W "$gelf_options" -S = -- "$cur" ) ) ;; syslog) - COMPREPLY=( $( compgen -W "syslog-address syslog-facility syslog-tag" -S = -- "$cur" ) ) + COMPREPLY=( $( compgen -W "$syslog_options" -S = -- "$cur" ) ) ;; *) return