Skip to content

Commit 85baa0d

Browse files
committed
Add bash completion for manifest command family
Signed-off-by: Harald Albers <github@albersweb.de>
1 parent 4114c15 commit 85baa0d

1 file changed

Lines changed: 108 additions & 0 deletions

File tree

contrib/completion/bash/docker

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1144,6 +1144,7 @@ _docker_docker() {
11441144
*)
11451145
local counter=$( __docker_pos_first_nonflag "$(__docker_to_extglob "$global_options_with_args")" )
11461146
if [ "$cword" -eq "$counter" ]; then
1147+
__docker_client_is_experimental && commands+=(${experimental_client_commands[*]})
11471148
__docker_server_is_experimental && commands+=(${experimental_server_commands[*]})
11481149
COMPREPLY=( $( compgen -W "${commands[*]} help" -- "$cur" ) )
11491150
fi
@@ -3833,6 +3834,109 @@ _docker_swarm_update() {
38333834
esac
38343835
}
38353836

3837+
_docker_manifest() {
3838+
local subcommands="
3839+
annotate
3840+
create
3841+
inspect
3842+
push
3843+
"
3844+
__docker_subcommands "$subcommands" && return
3845+
3846+
case "$cur" in
3847+
-*)
3848+
COMPREPLY=( $( compgen -W "--help" -- "$cur" ) )
3849+
;;
3850+
*)
3851+
COMPREPLY=( $( compgen -W "$subcommands" -- "$cur" ) )
3852+
;;
3853+
esac
3854+
}
3855+
3856+
_docker_manifest_annotate() {
3857+
case "$prev" in
3858+
--arch)
3859+
COMPREPLY=( $( compgen -W "
3860+
386
3861+
amd64
3862+
arm
3863+
arm64
3864+
mips64
3865+
mips64le
3866+
ppc64le
3867+
s390x" -- "$cur" ) )
3868+
return
3869+
;;
3870+
--os)
3871+
COMPREPLY=( $( compgen -W "
3872+
darwin
3873+
dragonfly
3874+
freebsd
3875+
linux
3876+
netbsd
3877+
openbsd
3878+
plan9
3879+
solaris
3880+
windows" -- "$cur" ) )
3881+
return
3882+
;;
3883+
--os-features|--variant)
3884+
return
3885+
;;
3886+
esac
3887+
3888+
case "$cur" in
3889+
-*)
3890+
COMPREPLY=( $( compgen -W "--arch --help --os --os-features --variant" -- "$cur" ) )
3891+
;;
3892+
*)
3893+
local counter=$( __docker_pos_first_nonflag "--arch|--os|--os-features|--variant" )
3894+
if [ "$cword" -eq "$counter" ] || [ "$cword" -eq "$((counter + 1))" ]; then
3895+
__docker_complete_images --force-tag --id
3896+
fi
3897+
;;
3898+
esac
3899+
}
3900+
3901+
_docker_manifest_create() {
3902+
case "$cur" in
3903+
-*)
3904+
COMPREPLY=( $( compgen -W "--amend -a --help --insecure" -- "$cur" ) )
3905+
;;
3906+
*)
3907+
__docker_complete_images --force-tag --id
3908+
;;
3909+
esac
3910+
}
3911+
3912+
_docker_manifest_inspect() {
3913+
case "$cur" in
3914+
-*)
3915+
COMPREPLY=( $( compgen -W "--help --insecure --verbose -v" -- "$cur" ) )
3916+
;;
3917+
*)
3918+
local counter=$( __docker_pos_first_nonflag )
3919+
if [ "$cword" -eq "$counter" ] || [ "$cword" -eq "$((counter + 1))" ]; then
3920+
__docker_complete_images --force-tag --id
3921+
fi
3922+
;;
3923+
esac
3924+
}
3925+
3926+
_docker_manifest_push() {
3927+
case "$cur" in
3928+
-*)
3929+
COMPREPLY=( $( compgen -W "--help --insecure --purge -p" -- "$cur" ) )
3930+
;;
3931+
*)
3932+
local counter=$( __docker_pos_first_nonflag )
3933+
if [ "$cword" -eq "$counter" ]; then
3934+
__docker_complete_images --force-tag --id
3935+
fi
3936+
;;
3937+
esac
3938+
}
3939+
38363940
_docker_node() {
38373941
local subcommands="
38383942
demote
@@ -5090,6 +5194,10 @@ _docker() {
50905194
wait
50915195
)
50925196

5197+
local experimental_client_commands=(
5198+
manifest
5199+
)
5200+
50935201
local experimental_server_commands=(
50945202
checkpoint
50955203
deploy

0 commit comments

Comments
 (0)