Prechádzať zdrojové kódy

Add bash completion for plugin names

Signed-off-by: Harald Albers <github@albersweb.de>
Harald Albers 8 rokov pred
rodič
commit
e7243a303a
1 zmenil súbory, kde vykonal 10 pridanie a 1 odobranie
  1. 10 1
      contrib/completion/bash/docker

+ 10 - 1
contrib/completion/bash/docker

@@ -23,6 +23,7 @@
 # DOCKER_COMPLETION_SHOW_CONTAINER_IDS
 # DOCKER_COMPLETION_SHOW_NETWORK_IDS
 # DOCKER_COMPLETION_SHOW_NODE_IDS
+# DOCKER_COMPLETION_SHOW_PLUGIN_IDS
 # DOCKER_COMPLETION_SHOW_SECRET_IDS
 # DOCKER_COMPLETION_SHOW_SERVICE_IDS
 #   "no"  - Show names only (default)
@@ -286,9 +287,17 @@ __docker_complete_plugins_bundled() {
 
 # __docker_plugins_installed returns a list of all plugins that were installed with
 # the Docker plugin API.
+# By default, only names are returned.
+# Set DOCKER_COMPLETION_SHOW_PLUGIN_IDS=yes to also complete IDs.
 # For built-in pugins, see `__docker_plugins_bundled`.
 __docker_plugins_installed() {
-	__docker_q plugin ls | awk 'NR>1 {print $1}'
+	local fields
+	if [ "$DOCKER_COMPLETION_SHOW_PLUGIN_IDS" = yes ] ; then
+		fields='$1,$2'
+	else
+		fields='$2'
+	fi
+	__docker_q plugin ls | awk "NR>1 {print $fields}"
 }
 
 # __docker_complete_plugins_installed applies completion of plugins that were installed