diff --git a/go.mod b/go.mod index 1a9b10895..17758a232 100644 --- a/go.mod +++ b/go.mod @@ -33,7 +33,7 @@ require ( k8s.io/api v0.0.0-20240506162732-aa3ed7cd8078 k8s.io/apimachinery v0.0.0-20240503202409-c9c3e94f52f0 k8s.io/cli-runtime v0.0.0-20240429215938-3d3e8d0680c7 - k8s.io/client-go v0.0.0-20240506163139-d3682da14f72 + k8s.io/client-go v0.0.0-20240507003106-4ebe42d8c9c1 k8s.io/component-base v0.0.0-20240429214345-5e40e2a98ae4 k8s.io/component-helpers v0.0.0-20240429214446-60a3ae8b14fc k8s.io/klog/v2 v2.120.1 diff --git a/go.sum b/go.sum index ef92679e0..1b137f823 100644 --- a/go.sum +++ b/go.sum @@ -282,8 +282,8 @@ k8s.io/apimachinery v0.0.0-20240503202409-c9c3e94f52f0 h1:7WYV6yFZ33GBiOXTMsfUjl k8s.io/apimachinery v0.0.0-20240503202409-c9c3e94f52f0/go.mod h1:+hpAhBheGa7Ub4X6JfKqjEeACgGYZqZv+ILGzigzVGU= k8s.io/cli-runtime v0.0.0-20240429215938-3d3e8d0680c7 h1:tNbe0f4v+nrx+R01/065Tg094RN3+DTtPSvbRMhi/98= k8s.io/cli-runtime v0.0.0-20240429215938-3d3e8d0680c7/go.mod h1:0J9X6UV4xHT0hxsT4wBi++13brY9XghjH99mMPivXLw= -k8s.io/client-go v0.0.0-20240506163139-d3682da14f72 h1:cQdjRQt3SH/YrjbP9pO/Sfl0a2MhapwPqFajnzc7Guk= -k8s.io/client-go v0.0.0-20240506163139-d3682da14f72/go.mod h1:MYfNDqUOUfbQselRT7Mq27A9aSTUTs5l5t/pcXeyaNY= +k8s.io/client-go v0.0.0-20240507003106-4ebe42d8c9c1 h1:RX3OqgOyuQAnEeY0Ht6AFN5nY5sPxL/tQM/6XX77Pi4= +k8s.io/client-go v0.0.0-20240507003106-4ebe42d8c9c1/go.mod h1:MYfNDqUOUfbQselRT7Mq27A9aSTUTs5l5t/pcXeyaNY= k8s.io/component-base v0.0.0-20240429214345-5e40e2a98ae4 h1:Ct5j9tCEkBD5KPM/BqtAtA6rgt8brHGGr8l6eanBOmY= k8s.io/component-base v0.0.0-20240429214345-5e40e2a98ae4/go.mod h1:B3AGdGZxZxR1amewMS5PQgUfLsPwZWms/97uvjxc5O8= k8s.io/component-helpers v0.0.0-20240429214446-60a3ae8b14fc h1:AjAfCw+uNLwXRHnLtISHxJsLSg4P2/ScDA+codG/DmE= diff --git a/pkg/cmd/set/set_image.go b/pkg/cmd/set/set_image.go index 84f8911cd..e897b40ae 100644 --- a/pkg/cmd/set/set_image.go +++ b/pkg/cmd/set/set_image.go @@ -34,6 +34,7 @@ import ( cmdutil "k8s.io/kubectl/pkg/cmd/util" "k8s.io/kubectl/pkg/polymorphichelpers" "k8s.io/kubectl/pkg/scheme" + "k8s.io/kubectl/pkg/util/completion" "k8s.io/kubectl/pkg/util/i18n" "k8s.io/kubectl/pkg/util/templates" ) @@ -112,6 +113,7 @@ func NewImageOptions(streams genericiooptions.IOStreams) *SetImageOptions { // NewCmdImage returns an initialized Command instance for the 'set image' sub command func NewCmdImage(f cmdutil.Factory, streams genericiooptions.IOStreams) *cobra.Command { o := NewImageOptions(streams) + validArgs := []string{"daemonsets", "deployments", "pods", "cronjobs", "replicasets", "replicationcontrollers", "statefulsets"} cmd := &cobra.Command{ Use: "image (-f FILENAME | TYPE NAME) CONTAINER_NAME_1=CONTAINER_IMAGE_1 ... CONTAINER_NAME_N=CONTAINER_IMAGE_N", @@ -119,6 +121,7 @@ func NewCmdImage(f cmdutil.Factory, streams genericiooptions.IOStreams) *cobra.C Short: i18n.T("Update the image of a pod template"), Long: imageLong, Example: imageExample, + ValidArgsFunction: completion.SpecifiedResourceTypeAndNameNoRepeatCompletionFunc(f, validArgs), Run: func(cmd *cobra.Command, args []string) { cmdutil.CheckErr(o.Complete(f, cmd, args)) cmdutil.CheckErr(o.Validate())