mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-23 11:50:44 +00:00
Merge pull request #64374 from deads2k/scale-client
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. move scaleClient from factory rebase https://github.com/kubernetes/kubernetes/pull/64287 ```release-note NONE ```
This commit is contained in:
commit
b9e46f5422
@ -220,7 +220,7 @@ func (o *ApplyOptions) Complete(f cmdutil.Factory, cmd *cobra.Command) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
o.Scaler, err = f.ScaleClient()
|
o.Scaler, err = cmdutil.ScaleClientFn(f)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
@ -214,7 +214,7 @@ func (o *RollingUpdateOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, a
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
o.ScaleClient, err = f.ScaleClient()
|
o.ScaleClient, err = cmdutil.ScaleClientFn(f)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
@ -242,7 +242,6 @@ func (o *RollingUpdateOptions) Validate(cmd *cobra.Command, args []string) error
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (o *RollingUpdateOptions) Run() error {
|
func (o *RollingUpdateOptions) Run() error {
|
||||||
|
|
||||||
filename := ""
|
filename := ""
|
||||||
if len(o.FilenameOptions.Filenames) > 0 {
|
if len(o.FilenameOptions.Filenames) > 0 {
|
||||||
filename = o.FilenameOptions.Filenames[0]
|
filename = o.FilenameOptions.Filenames[0]
|
||||||
|
@ -289,7 +289,7 @@ func ScaleJob(info *resource.Info, jobsClient batchclient.JobsGetter, count uint
|
|||||||
}
|
}
|
||||||
|
|
||||||
func scaler(f cmdutil.Factory) (kubectl.Scaler, error) {
|
func scaler(f cmdutil.Factory) (kubectl.Scaler, error) {
|
||||||
scalesGetter, err := f.ScaleClient()
|
scalesGetter, err := cmdutil.ScaleClientFn(f)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,6 @@ import (
|
|||||||
"k8s.io/client-go/dynamic"
|
"k8s.io/client-go/dynamic"
|
||||||
"k8s.io/client-go/kubernetes"
|
"k8s.io/client-go/kubernetes"
|
||||||
restclient "k8s.io/client-go/rest"
|
restclient "k8s.io/client-go/rest"
|
||||||
scaleclient "k8s.io/client-go/scale"
|
|
||||||
api "k8s.io/kubernetes/pkg/apis/core"
|
api "k8s.io/kubernetes/pkg/apis/core"
|
||||||
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
||||||
"k8s.io/kubernetes/pkg/kubectl/cmd/util/openapi"
|
"k8s.io/kubernetes/pkg/kubectl/cmd/util/openapi"
|
||||||
@ -78,9 +77,6 @@ type Factory interface {
|
|||||||
Validator(validate bool) (validation.Schema, error)
|
Validator(validate bool) (validation.Schema, error)
|
||||||
// OpenAPISchema returns the schema openapi schema definition
|
// OpenAPISchema returns the schema openapi schema definition
|
||||||
OpenAPISchema() (openapi.Resources, error)
|
OpenAPISchema() (openapi.Resources, error)
|
||||||
|
|
||||||
// ScaleClient gives you back scale getter
|
|
||||||
ScaleClient() (scaleclient.ScalesGetter, error)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func makePortsString(ports []api.ServicePort, useNodePort bool) string {
|
func makePortsString(ports []api.ServicePort, useNodePort bool) string {
|
||||||
|
@ -38,6 +38,8 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/sets"
|
"k8s.io/apimachinery/pkg/util/sets"
|
||||||
"k8s.io/apimachinery/pkg/util/yaml"
|
"k8s.io/apimachinery/pkg/util/yaml"
|
||||||
"k8s.io/client-go/dynamic"
|
"k8s.io/client-go/dynamic"
|
||||||
|
"k8s.io/client-go/rest"
|
||||||
|
"k8s.io/client-go/scale"
|
||||||
"k8s.io/client-go/tools/clientcmd"
|
"k8s.io/client-go/tools/clientcmd"
|
||||||
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
||||||
"k8s.io/kubernetes/pkg/kubectl"
|
"k8s.io/kubernetes/pkg/kubectl"
|
||||||
@ -673,3 +675,35 @@ func genericDescriber(restClientGetter genericclioptions.RESTClientGetter, mappi
|
|||||||
eventsClient := clientSet.Core()
|
eventsClient := clientSet.Core()
|
||||||
return printersinternal.GenericDescriberFor(mapping, dynamicClient, eventsClient), nil
|
return printersinternal.GenericDescriberFor(mapping, dynamicClient, eventsClient), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ScaleClientFunc provides a ScalesGetter
|
||||||
|
type ScaleClientFunc func(genericclioptions.RESTClientGetter) (scale.ScalesGetter, error)
|
||||||
|
|
||||||
|
// ScaleClientFn gives a way to easily override the function for unit testing if needed.
|
||||||
|
var ScaleClientFn ScaleClientFunc = scaleClient
|
||||||
|
|
||||||
|
// scaleClient gives you back scale getter
|
||||||
|
func scaleClient(restClientGetter genericclioptions.RESTClientGetter) (scale.ScalesGetter, error) {
|
||||||
|
discoveryClient, err := restClientGetter.ToDiscoveryClient()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
clientConfig, err := restClientGetter.ToRESTConfig()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
setKubernetesDefaults(clientConfig)
|
||||||
|
restClient, err := rest.RESTClientFor(clientConfig)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
resolver := scale.NewDiscoveryScaleKindResolver(discoveryClient)
|
||||||
|
mapper, err := restClientGetter.ToRESTMapper()
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
|
||||||
|
return scale.New(restClient, mapper, dynamic.LegacyAPIPathResolverFunc, resolver), nil
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user