Detect compose plugin

Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
(cherry picked from commit 5a8d7d506c)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
Ulysses Souza 2021-07-08 09:07:08 -03:00 committed by Sebastiaan van Stijn
parent b30d250320
commit 613b9362d0
No known key found for this signature in database
GPG Key ID: 76698F39D527CE8C
1 changed files with 13 additions and 11 deletions

View File

@ -5485,21 +5485,21 @@ _docker_wait() {
_docker_container_wait
}
COMPOSE_PLUGIN_PATH=$(docker info --format '{{json .ClientInfo.Plugins}}' | sed -n 's/.*"Path":"\([^"]\+docker-compose\)".*/\1/p')
_docker_compose() {
local composePluginPath="${HOME}/.docker/cli-plugins/docker-compose"
local completionCommand="__completeNoDesc"
local resultArray=(${composePluginPath} ${completionCommand} compose)
for value in "${words[@]:2}"
do
if [[ "${value}" == "" ]] ; then
local resultArray=($COMPOSE_PLUGIN_PATH $completionCommand compose)
for value in "${words[@]:2}"; do
if [ -z "$value" ]; then
resultArray+=( "''" )
else
resultArray+=( "${value}" )
resultArray+=( "$value" )
fi
done
local result=$(eval "${resultArray[*]}" 2> /dev/null)
local result=$(eval "${resultArray[*]}" 2> /dev/null | grep -v '^:[0-9]*$')
COMPREPLY=( $(compgen -W "${result%%:*}" -- "$current") )
COMPREPLY=( $(compgen -W "${result}" -- "$current") )
}
_docker() {
@ -5571,9 +5571,11 @@ _docker() {
wait
)
local known_plugin_commands=(
compose
)
local known_plugin_commands=()
if [ -f "$COMPOSE_PLUGIN_PATH" ] ; then
known_plugin_commands+=("compose")
fi
local experimental_server_commands=(
checkpoint